首先我们在Application中设置定时任务@EnableScheduling
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) throws Exception{
SpringApplication.run(Application.class);
}
}
作用是为了发现注解@Scheduled并后台开启
注意: 需要在定时任务的类上加上注释@Component,在具体的实现类上面加上注释@Scheduled
@Component
class Scheduler{
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
//每隔2秒执行一次
@Scheduled(fixedRate = 2000)
public void testTasks() {
System.out.println("定时任务执行时间:" + dateFormat.format(new Date()));
}
//每天3:05执行
@Scheduled(cron = "0 05 03 ? * *")
public void testTasks() {
System.out.println("定时任务执行时间:" + dateFormat.format(new Date()));
}
}
注意:
@Schedule参数描述
@Schedule(fixedRate=3000)
上一次开始执行时间后3秒再次执行