/**
* @EnableScheduling 加载定时任务启动类
*/
@SpringBootApplication
@EnableScheduling
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
二、定义执行定时任务方法
@Component
public class springTaskDemo {
@Scheduled(cron = "* * * * * ?")
public void reflashGoods() {
System.out.println("刷新商品" + new Date().getSeconds());
}
}
三、cron表达式
Cron 表达式是一个字符串,字符串以 5 或 6 个空格隔开,分为 6 或 7 个域,每一个域代表一个含义,Cron 有如下两种语法格式:
(1)Seconds Minutes Hours DayofMonth Month DayofWeek Year
( 2)Seconds Minutes Hours DayofMonth Month DayofWeek
Seconds:可出现", - * /“四个字符,有效范围为 0-59 的整数
Minutes:可出现”, - * /“四个字符,有效范围为 0-59 的整数
Hours:可出现”, - * /“四个字符,有效范围为 0-23 的整数
DayofMonth:可出现”, - * / ? L W C"八个字符,有效范围为 1-31 的整数
Month:可出现", - * /“四个字符,有效范围为 1-12 的整数或 JAN-DEc
DayofWeek:可出现”, - * / ? L C #“四个字符,有效范围为 1-7 的整数或 SUN-SAT 两个范围。1
表示星期天,2 表示星期一, 依次类推
Year:可出现”, - * /"四个字符,有效范围为 1970-2099 年
(1) *:表示匹配该域的任意值;
(2) -:表示范围;
(3) /:表示起始时间开始触发,然后每隔固定时间触发一次;
(4) ,:表示列出枚举值值。
0 0 10,14,16 * * ? 每天上午 10 点,下午 2 点,4 点
0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时