springboot定时器@Scheduled的使用

需要导入的依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.1.0.RELEASE</version>
</dependency>

cron属性

格式
{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}
秒数 范围0-59,不允许为空
分钟 范围0-59,不允许为空
小时 范围0-23,不允许为空
日期 范围1-31,不允许为空
星期 1-7,不允许为空,需要注意的是1表示星期天,7表示星期六
年份 1970-2099,可以为空

常用占位符
"" 通配符,可以表示该范围内的任意数字(如果是秒, 就是0-59,如果是日期,* 就是1-31)
"," 列举数字,在指定数字时触发,例如如果在秒的位置上 1,5,8 表示在1秒,5秒,8秒时触发。
"-" 指定范围,例如在分钟的位置上 5-20 表示从5分钟开始到20分钟结束,每分钟都触发一次,注意,默认间隔为一个单位。
"/ " 指定间隔单位,例如在分钟位置上 5-20/5 表示重5分钟开始到20分钟结束,没5分钟触发一次
"?" 由于日期与星期可能表示同一天,所以两个中的一个必须使用 ?表示互斥。
"L" 来自于英文单词last,表示最后的意思。只能用于日期和星期的位置上,用在日期上表示每月最后一天,用在星期上表示一星期的最后一天即星期六。如果使用的时候加上数字,比如6L,在日期的位置上表示每个月的倒数第六天,而日期上2L表示最后一个星期一。

常用案列:
“30 * * * * ?” 每分钟的第30秒执行
“30 10 * * * ?” 每小时的10分30秒触发任务
“30 10 1 * * ?” 每天1点10分30秒触发任务
“30 10 1 20 * ?” 每月20号1点10分30秒触发任务
“30 10 1 20 10 ? *” 每年10月20号1点10分30秒触发任务
“30 10 1 20 10 ? 2011” 2011年10月20号1点10分30秒触发任务
“30 10 1 ? 10 * 2011” 2011年10月每天1点10分30秒触发任务
“30 10 1 ? 10 SUN 2011” 2011年10月每周日1点10分30秒触发任务
“15,30,45 * * * * ?” 每15秒,30秒,45秒时触发任务
“15-45 * * * * ?” 15到45秒内,每秒都触发任务
“15/5 * * * * ?” 每分钟的每15秒开始触发,每隔5秒触发一次
“15-30/5 * * * * ?” 每分钟的15秒到30秒之间开始触发,每隔5秒触发一次
“0 0/3 * * * ?” 每小时的第0分0秒开始,每三分钟触发一次
“0 15 10 ? * MON-FRI” 星期一到星期五的10点15分0秒触发任务
“0 15 10 L * ?” 每个月最后一天的10点15分0秒触发任务
“0 15 10 LW * ?” 每个月最后一个工作日的10点15分0秒触发任务
“0 15 10 ? * 5L” 每个月最后一个星期四的10点15分0秒触发任务
“0 15 10 ? * 5#3” 每个月第三周的星期四的10点15分0秒触发任务

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容