0
点赞
收藏
分享

微信扫一扫

定时任务调度框架Quartz--Cron表达式


文章目录

  • ​​cron表达式​​

cron表达式

    cron表达式总共有7位,记忆口诀:​​秒分时天月,星期+年​

定时任务调度框架Quartz--Cron表达式_取值范围

        还可以使用一些特殊符号:

        ​​*​​​ :表示任意值。比如用于​​秒 (1号位)​​​,表示每一秒。取值范围相当于0~59。比如​​* 38 16 * * ?​​​,表示在16:38分的这一分钟里每一秒都要执行。如果用于​​小时 (3号位)​​​,比如​​"16 10 * * * ?"​​,相当于每个小时的10分16秒都要执行,一天执行24次。

        ​​?​​​:只能用于​​天 (4号位)​​​与 ​​星期几(6号位)​​​,表示不确定的时间。比如下面的这个表达式​​0 0 2 1 * ?​​​,表示每个月的1号的凌晨两点执行。6号位表示星期几,因为每个月的1号是星期几并不确定,所以就用​​?​​替代,也是情理之中。

        ​​/​​​:表示按照固定时间触发。比如下面的表达式​​0 0/5 2 1 * ?​​​表示每个月的1号的凌晨2:00执行,然后按照每5分钟的频率继续执行,下次执行的时间是 2:05 , 2:10,2:15 。。。。,​​直到2:55最后一次执行​​,下一个月会重复此情况。

        注意。​​"0/10 59 15 * * ?"​​​这种表达式指定了在15:59分执行,在15:59开始的这一分钟内,每10秒执行一次。但是到了16:00就会停止执行。它只会在15:59这一分钟内按照10秒一次的执行频率执行。
        同理,​​​"0 57/1 16 * * ?"​​,它只能在16点到17点之内循环执行,此表达式是16:57分开始执行,并且每分钟执行一次,分别为16:57、16:58、16:59。到了今天17点就不再执行。明天会重复今天的执行情况。

        ​​-​​​:表示一个范围。比如用到​​秒(1号位)​​​,​​"0-20 07 17 * * ?"​​​,表示17:07:00 立刻执行,直到17:07:20,共执行20次。
        又例如用到​​​分钟 (2号位)​​​:​​0 15-18 17 * * ?​​表示17点15分、17点16分、17点17分、17点18分执行,共执行4次。明天会重复今天的执行情况。

        ​​,​​​:表示枚举。​​0 0 1,2,3 * * ?​​​表示每天凌晨1点、凌晨2点、凌晨3点执行,共执行3次。明天会重复今天的执行情况。​​0 0/5 1,2,3,4 * * ?​​​,跟​​/​​结合起来,此时表示每天凌晨1点到4点之间,每5分钟执行一次。

        ​​L​​​::只能出现在​​天(4号位)​​​,表示最后一天、​​星期 (6号位)​​​,表示最后一个星期,例如5L,意味着在最后的一个星期四触发。(1=Sunday)。​​0 15 10 L * ?​​​:每月最后一日的上午10:15触发 。 ​​0 15 10 ? * 6L​​每月的最后一个星期五上午10:15触发


举报

相关推荐

0 条评论