SpringBoot定时器
第一步:在启动类添加 @EnableScheduling 注解

第二步:随便创建一个类

第三步:根据需求 在 @Scheduled(cron = "") 注解中定义执行的时间
第四步:启动项目测试

Cron表达式的格式说明
@Scheduled(cron = "* * * * * ?") 表示 @Scheduled(cron = "秒 分 时 日 月 周") 以空格分开
Cron表达式取值范围
| 字段 | 取值范围 | 允许的特殊字符 |
|---|---|---|
| 秒 | 0 - 59 | , - * / |
| 分 | 0 - 59 | , - * / |
| 时 | 0 - 23 | , - * / |
| 日 | 1 - 31 | , - * ? / L W C |
| 月 | 1 - 12 或者 JAN - DEC | , - * / |
| 周 | 1 - 7 或者 SUN - SAT | , - * ? / L C # |
| 年 | 可以填写, 默认 1970 - 2099 | , - * / |
常用特殊字符说明
*:表示在每个位置上 每秒、每分、每个小时、每个月、每个星期都执行,:表示 某时间点会执行 用,进行分隔,如:在秒上设置 1,10 则会 1秒执行一次、10秒执行一次,其它位置皆是如此-:表示触发范围,如:在秒上设置 5-30 ,则会从5秒开始执行到30秒结束,其它位置皆如此/:表示 触发步进(step),"/"前面的值代表初始值("*"或者"0"),后面的值代表偏移量,比如:在秒的位置上设置 */5 ,那么就会每隔5秒中就会执行一次,其它位置皆如此
Cron表达式范例:
每隔5秒执行一次:*/5 * * * * ?
每隔5分钟执行一次:0 */5 * * * ?
每隔1小时执行一次:0 0 */1 * * ?
每天23点执行一次:0 0 23 * * ?
每天凌晨1点执行一次:0 0 1 * * ?
每月1号凌晨1点执行一次:0 0 1 1 * ?
每月最后一天23点执行一次:0 0 23 L * ?
每周星期天凌晨1点实行一次:0 0 1 ? * L
在26分、29分、33分执行一次:0 26,29,33 * * * ?
每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?
浙公网安备 33010602011771号