spring中常用到的cron表达式

本文介绍了cron表达式的生成方法,简单的可自行编写,复杂的可用在线生成器(http://cron.qqe2.com/)。还详细阐述了cron表达式中各字段可选值及含义,如*、-、,等符号的作用,并给出了相关参考链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先来一个重磅的,根据对cron的了解可以写出一些简单的cron表达式,而针对那些比较复杂的则可以直接使用在线cron表达式生成器来生成相应的cron表达式,地址为http://cron.qqe2.com/

按顺序,以及各个可选的值依次为
秒-Seconds: 0-59 , - * / 
分-Minutes: 0-59 , - * / 
小时-Hours: 0-23 , - * / 
日期-DayofMonth: 1-30(31) , - ? * / L W C
月份-Month: 1-12(JAN-DEC) , - * / 
星期-DayofWeek: 1-7(SUN-SAT,注意1=SUN,2=MON) , - * ? / L C # 
年-Year:(可选)留空也可以, 1970-2099 , - * /

各个可选值,字段的含义分别为:
*:代表所有可能的值,用在秒上-代表每隔1秒钟触发一次任务;用在分钟上-代表每隔1分钟解发一次任务
-:指定范围,指在某个范围内都要执行,例如若5-20表示从5分钟到20分钟,每分钟触发一次
,:列出枚举??例如用在分钟上,"5,15"表示只在5分钟,20分钟触发任务
/:指定增量??例如用在分钟上,"3/15"表示先从第3分钟触发一次,以后每隔15分钟执行一次,在实际应用中,常常有这样的两种情况,"0/15"与"*/15",实际上这两种表达的意思是一样的,都是每隔15分钟执行一次。
?:表示没有具体的值,使用?要注意冲突
L:表示last,例如星期中表示7或SAT,月份中表示最后一天31或30,6L表示这个月倒数第6天,FRIL表示这个月的最后一个星期五
W:只能用在月份中,表示最接近指定天的工作日
#:只能用在星期中,用来指定具体的周数,"#"前面代表星期,"#"后面代表本月第几周,比如"2#2"表示本月第二周的星期一,"5#3"表示本月第三周的星期四,因此,"5L"这种形式只不过是"#"的特殊形式而已
C:允许在日期域和星期域出现。这个字符依靠一个指定的“日历”。也就是说这个表达式的值依赖于相关的“日历”的计算结果,如果没有“日历”关联,则等价于所有包含的“日历”。如:日期域是“5C”表示关联“日历”中第一天,或者这个月开始的第一天的后5天。星期域是“1C”表示关联“日历”中第一天,或者星期的第一天的后1天,也就是周日的后一天(周一)。

参考链接:
1.https://blog.youkuaiyun.com/fanrenxiang/article/details/80361582
2.https://www.cnblogs.com/junrong624/p/4239517.html
3.https://blog.youkuaiyun.com/wh13267207590/article/details/80095128

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值