打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Cron常用表达式|学习定时任务
userphoto

2022.09.06 辽宁

关注

▶▶▶🎧戴上耳机🎧◀◀◀


倒带 音乐: 周杰伦 - 周杰伦 2004 无与伦比 演唱会 Live CD

 -Cron表达式 

Cron表达式是啥

     Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义。

        表达的格式:秒 分 时 日 月 周 年(可选)

字段名 允许的值 允许的特殊字符       秒                0-59                     , - * /        分                0-59                     , - * /        小时              0-23                     , - * /        日                1-31                     , - * ? / L W C        月                1-12 or JAN-DEC         , - * /        周几              1-7 or SUN-SAT          , - * ? / L C #   年 (可选字段) empty, 1970-2099 , - * /

            “*”字符:所有可能的值   可以表示为 每一 ()

               “?”字符:表示不确定的值

“?”字符仅被用于天(月)和天(星期)两个子表达式,表示不指定值 
当2个子表达式其中之一被指定了值以后,为了避免冲突,需要将另一个子表达式的值设为“?”    例如不可能是每个月23号的礼拜三,这样会冲突报错

               “,”字符:指定数个值

               “-”字符:指定一个值的范围

               “/”字符:指定一个值的增加幅度。n/m表示从n开始,每次增加m

               “L”字符:用在日表示一个月中的最后一天,用在周表示该月最后一个星期X

               “W”字符:指定离给定日期最近的工作日(周一到周五)

               “#”字符:表示该月第几个周X。6#3表示该月第3个周五

        其实这个也不是很复杂,我们以上的就相当于了解一下就好了,就记住Cron表达式,要么是六位或者七位,七位的话肯定是有年份的(我们寻常用到的就是六位)。取值范围,其实我们有常识都知道。字符的话,其实对于我来说就是 “?”  “,” 用的最多了。

        我来举一些例子,你们对应着例子,就能理解了。

  (1)0/2 * * * * ?   表示每2秒 执行任务  (1)0 0/2 * * * ?    表示每2分钟 执行任务  (1)0 0 2 1 * ?   表示在每月的1日的凌晨2点调整任务  (2)0 15 10 ? * MON-FRI   表示周一到周五每天上午10:15执行作业  (3)0 15 10 ? 6L 2002-2006   表示2002-2006年的每个月的最后一个星期五上午10:15执行作  (4)0 0 10,14,16 * * ?   每天上午10点,下午2点,4点   (5)0 0/30 9-17 * * ?   朝九晚五工作时间内每半小时   (6)0 0 12 ? * WED    表示每个星期三中午12点   (7)0 0 12 * * ?   每天中午12点触发   (8)0 15 10 ? * *    每天上午10:15触发   (9)0 15 10 * * ?     每天上午10:15触发   (10)0 15 10 * * ?    每天上午10:15触发   (11)0 15 10 * * ? 2005    2005年的每天上午10:15触发   (12)0 * 14 * * ?     在每天下午2点到下午2:59期间的每1分钟触发   (13)0 0/5 14 * * ?    在每天下午2点到下午2:55期间的每5分钟触发   (14)0 0/5 14,18 * * ?     在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发   (15)0 0-5 14 * * ?    在每天下午2点到下午2:05期间的每1分钟触发   (16)0 10,44 14 ? 3 WED    每年三月的星期三的下午2:10和2:44触发   (17)0 15 10 ? * MON-FRI    周一至周五的上午10:15触发   (18)0 15 10 15 * ?    每月15日上午10:15触发   (19)0 15 10 L * ?    每月最后一日的上午10:15触发   (20)0 15 10 ? * 6L    每月的最后一个星期五上午10:15触发   (21)0 15 10 ? * 6L 2002-2005   2002年至2005年的每月的最后一个星期五上午10:15触发   (22)0 15 10 ? * 6#3   每月的第三个星期五上午10:15触发

        看到例子是不是清楚很多?比如我们签到的脚本要每天上午九点重放一次的话,我们就可以这样写     0 0 9 * * ?   好了 ,今天的Cron表达式就学习到这里咯。

唠唠嗑

      这一期讲到Cron表达式呢,是为了下一期好来讲一下用螃蟹怎么做一个自动签到任务。大家如果喜欢的话就点个赞吧!并且在下一期咱们还会抽几个螃蟹的车位给大家(多亏了有粉丝的支持,愿意将车位分享给更多的人),感恩!

本期内容到此结束,

我们下期再见!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
摆脱Spring 定时任务的@Scheduled cron表达式的困扰
Quartz.net官方开发指南 第六课 : CronTrigger - 自由、创新、研究、探索 - 博客园
Quartz Cron Expressions 详解
Quartz中的时间表达式介绍和常用表达式
QuartZ Cron表达式
java 定时任务 quartz 时间表达式Cron总结
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服