cron表达式解析

cron表达式可以是6位或7位,以下是七位字符的含义

字段允许值允许的特殊字符
秒(Seconds)0~59的整数, - * / 四个字符
分(Minutes0~59的整数, - * / 四个字符
小时(Hours0~23的整数, - * / 四个字符
日期(DayofMonth1~31的整数(根据月份变化),- * ? / L W C 八个字符
月份(Month1~12的整数或者 JAN-DEC, - * / 四个字符
星期(DayofWeek1~7的整数或者 SUN-SAT (1=SUN), - * ? / L C # 八个字符
年(可选,留空)(Year1970~2099, - * / 四个字符

*

该符号表示所有,如给秒设置*就是0到59秒都会执行

你可以把这个符合看为,比如a,b,c,就是a或b或c

如给分设置为3,20,45,那么他就会在3分钟,20分钟,45分钟时执行

只有一位数也是一样的

-

该符合表示范围,如给秒设置20-22,那么20秒,21秒,22秒都会执行

/

这是一个很容易理解的符号,我们可以把它转化为另一个表达式

如有:a/b,我们可以看成:n*b+a(其中n是在任意正整数,和不能超过规定范围)

比如给秒设为:2/12 ,也就是n*12+2,那么它的执行规律是这样的:2,14,26,38,50(不超过秒的最大值59)

#

这个符号只能用在星期,它表示一个月中的第几个星期几(1表示星期日,7表示星期六)

如给星期设置为2#3(注意此时日期必须为),他就是第三个星期一

L

该符合表示最后,只能用在日期和星期(也就是只能用在天数上)

如果是用在日期上,则在一个月的最后一天执行

如果用在星期上,则在周六执行

W

改符号只能在日期中使用,并且只能配合数字使用,如nW(其中n表示当前月的日期,超出当前月天数会报错)

nW用来寻找指定日期最近的工作日

如3W:

如果当前月份的3日是星期六,则在2日(星期五)执行

若是星期日,则在4日(星期一)执行

周一至周五,则直接执行

不跨月

如1W:

若当前月份的1日是星期六,则在3日(星期一)执行

对于月末也是如此的

LW

用在日期中,表示当月最后一个工作日

其实在表达式中日期和星期是重复的,但又是两个不同的概念,为了区分这两个冲突的概念,所以有了

因为冲突,所以在表达式中不能够同时设置日期和星期,它们两个必须有一个是

也就是说在设置日期时星期为,在设置星期时日期为

C

暂时没看懂的😜

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会功夫的李白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值