一、说明
Java项目中,配置定时任务是一个常见的需求。有很多方法可以实现定时任务的配置,Scheduled注解就是其中之一,下面就介绍如何利用@
Scheduled注解在Spring Boot项目中配置定时任务。
二、实现步骤
(1)、使用注解@Scheduled
注解来支持定时任务。首先需要在启动类上添加@EnableScheduling
注解,以开启定时任务功能。如图:
(2)、创建定时任务方法,添加
@Scheduled
注解,实现所需功能,如下代码:
//每5秒执行一次
@Scheduled(fixedRate = 5000)
public void fixedRateTask() {
System.out.println("执行任务:" + System.currentTimeMillis());
}
// 每5秒执行一次,但上次任务执行完成后才开始计算下一次任务执行时间
@Scheduled(fixedDelay = 5000)
public void fixedDelayTask() {
System.out.println("执行任务:" + System.currentTimeMillis());
}
// 使用Cron表达式,每天凌晨1点执行一次
@Scheduled(cron = "0 0 1 * * ?")
public void cronTask() {
System.out.println("执行任务:" + System.currentTimeMillis());
}
@Scheduled可以设置多种时间模式,可根据需求进行设置选择,定时模式如下表:
三、注意事项:
(1)、定时任务方法必须是公共的(public),并且不能有任何参数。
(2)、@Scheduled
注解,需要确保启动类上添加了@EnableScheduling
注解。