参考文章:http://www.ityouknow.com/springboot/2016/12/02/spring-boot-scheduler.html
1.集成pom包依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2.在启动类中添加注释
在启动类中添加
@EnableScheduling
即可开启定时
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3.创建任意的一个定时线程实现类
@Component
public class SchedulerTask {
@Scheduled(cron = "0 0,30 * * * *") //cron接受cron表达式,根据cron表达式确定定时规则
public void schedulerTask() {
// todo 业务
}
}
cron表达式可以参考这篇博文:https://www.jianshu.com/p/e9ce1a7e1ed1
4.fixedRate 参数说明
@Scheduled(fixedRate = 6000)
:上一次开始执行时间点之后6秒再执行@Scheduled(fixedDelay = 6000)
:上一次执行完毕时间点之后6秒再执行@Scheduled(initialDelay=1000, fixedRate=6000)
:第一次延迟1秒后执行,之后按 fixedRate 的规则每6秒执行一次