spring @Scheduled注解方式配置定时器
在sping配置文件中:
配置注解扫描:
<!-- 配置注解扫描 -->
<context:annotation-config/>
<context:component-scan base-package="demo.test" />
<!--配置sping定时器开关 -->
<task:annotation-driven/>
<!-- Spring定时器注解开关(可以不添加) -->
<!-- 此处对于定时时间的配置会被注解中的时间配置覆盖,因此,以注解配置为准 -->
<task:scheduled-tasks scheduler="myScheduler">
<task:scheduled ref="scheduledTaskManager" method="autoCardCalculate" cron="1/5 * * * * *"/>
</task:scheduled-tasks>
<task:scheduler id="myScheduler" pool-size="10"/>
执行任务的POJO类如下:
package com.demo.schedule;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
/**
* Created with IntelliJ IDEA.
* Author:
* Date: 2013-10-09 14:39
* Function: Spring定时任务管理
*/
@Component("scheduledTaskManager")
public class ScheduledTaskManager {
/**
* cron表达式:* * * * * *(共6位,使用空格隔开,具体如下)
* cron表达式:*(秒0-59) *(分钟0-59) *(小时0-23) *(日期1-31) *(月份1-12或是JAN-DEC) *(星期1-7或是SUN-SAT)
*/
/**
* 定时卡点计算。每天凌晨 02:00 执行一次
*/
@Scheduled(cron = "0 0 2 * * *")
public void autoCardCalculate() {
System.out.println("定时卡点计算... " + new Date());
}
/**
* 心跳更新。启动时执行一次,之后每隔1分钟执行一次
*/
@Scheduled(fixedRate = 1000*60*1)
public void heartbeat() {
System.out.println("心跳更新... " + new Date());
}
/**
* 卡点持久化。启动时执行一次,之后每隔2分钟执行一次
*/
@Scheduled(fixedRate = 1000*60*2)
public void persistRecord() {
System.out.println("卡点持久化... " + new Date());
}
}
分享到:
相关推荐
使用spring @Scheduled注解执行定时任务
@Scheduled注解的实现原理主要依赖于Spring框架的任务调度机制。当Spring容器启动时,它会扫描所有带有@Scheduled注解的方法,并将它们注册到任务调度器中。任务调度器会根据注解中指定的时间间隔或Cron表达式来触发...
在不停服务的情况下,动态修改Spring定时任务的执行周期,即动态修改定时任务的cron参数。
spring boot @scheduled注解 cron 表达式实现计划任务调度。
Spring的任务调度@Scheduled注解——task:scheduler和task:executor的解析,做了一些测试说明了各个参数的作用
主要介绍了spring-boot通过@Scheduled配置定时任务,文中还给大家介绍了springboot 定时任务@Scheduled注解的方法,需要的朋友可以参考下
主要介绍了spring 定时任务@Scheduled的相关资料,文中通过示例代码介绍的很详细,相信对大家的理解和学习具有一定的参考借鉴价值,有需要的朋友们下面来一起看看吧。
本篇文章中主要介绍了Spring Boot中使用@Scheduled创建定时任务,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
本篇文章主要介绍了详解在Spring3中使用注解(@Scheduled)创建计划任务,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
将@Scheduled注解与方法一起使用,指定任务执行的时间表达式。 2.使用Spring的TaskScheduler: Spring提供了TaskScheduler接口和相关实现,用于任务调度。使用TaskScheduler,你可以创建计划执行、定期执行或延迟...
一、基于@Scheduled注解的方式 1.1 cron 1.1.1 定时任务的方法在启动类里面 1.1.2 定时任务的方法在启动类之外 1.2 fixedDelay 1.3 fixedRate 1.4 initialDelay 一点五 cron解释 结构 取值范围 常例 二、基于...
说明:@Scheduled 注解用于标注这个方法是一个定时任务的方法,有多种配置可选。cron支持cron表达式,指定任务在特定时间执行;fixedRate以特定频率执行任务;fixedRateString以string的形式配置执行频率。
Springmvc java注解设置定时任务实例,利用 ScheduledExecutorService 接口实现
本代码是个demo,展示spring定时任务的三种实现方式:xml配置实现,注解实现及动态定时任务实现。
SpringBoot项目,定时扫表功能(Spring的Scheduled注解方式实现),maven工程
spring task定时任务的demo,基于配置和基于注解两种方法实现
5.添加定时任务:不再使用作业自动调度框架Quartz实现作业调度,使用spring框架自带的调度器进行作业调度,简化了配置。@Scheduled是单线程的,每次最多只有一个作业在运行,如果调度时间到了作业还没执行完,就会...
在Java Web程序中加入定时任务,这里介绍两种方式使用监听器注入,使用Spring注解@Scheduled注入,需要的朋友可以参考下
- chapter4-1-1:[使用@Scheduled创建定时任务](http://blog.didispace.com/springbootscheduled/) - chapter4-1-2:[使用@Async实现异步调用](http://blog.didispace.com/springbootasync/) #### 日志管理 - ...