Springboot定时器——cron表达式规则

一、认识符号

符号名作用举例
,连接符,表示列出枚举值。如在 minutes 域使用 2,15 ,表示 2 分和 15 分执行一次。
-连接符,表示范围如在 minutes 域使用 2-15 ,表示从 2 分到 15 分,每分钟执行一次。
/连接符,表示值增加的幅度如 n/m ,表示从第 n 秒开始,每隔 m 秒执执行一次,5/15 -->> 5, 20, 35, 50
*表示匹配该域的任意值如在 minutes 域使用,表示每分钟都会触发一次
?表示匹配该域的任意值,但只有 daysOfMonth 和 daysOfWeek 域才能使用,因为 daysOfMonth 和 daysOfWeek 域会相互影响,所以两个域不能同时使用 ? 。
------------特殊符号------------
L表最后
W表有效工作日
LW表最后某月最后一个工作日
#表用于确定每个月第几个星期几

二、符号作用范围

时间符号
Seconds可出现", - * /"四个字符,有效范围为0-59的整数
Minutes可出现", - * /"四个字符,有效范围为0-59的整数
Hours可出现", - * /"四个字符,有效范围为0-23的整数
DayofMonth可出现", - * / ? L W C"八个字符,有效范围为0-31的整数
Month可出现", - * /"四个字符,有效范围为1-12的整数或JAN-DEc
DayofWeek可出现", - * / ? L C #"四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推
Year可出现", - * /"四个字符,有效范围为1970-2099年

三、表达格式
cron表达式语法
[秒] [分] [小时] [日] [月] [周] [年]注:[年]不是必须的域,可以省略[年],则一共6个域

四、案例

说明表达具体意义
每天定时“0 0 12 * * ?”每天中午十二点触发
“0 0-5 14 * * ?”每天14:00至14:05每分钟一次触发
“0 0/5 14 * * ?”每天从下午2点开始到2:55分结束每5分钟一次触发

版权声明:本文为qq_39816370原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。