cron表达式

1. 简介

1.1 说明

cron表达式是一个字符串,是由空格隔开的6或7个域组成,每一个域一个含义。

每个域含义分别为(前6个必选,年为可选):

秒 分 时 日 月 周 年
1.2 用途
  • quarz框架定时任务表达式。支持6或7个域。
  • spring schedule定时任务表达式。仅支持前6个域
2. 字符类型及含义
2.1 每个域支持的字符类型
支持字符数值有效范围
, - * /0-59的整数
, - * /0-59的整数
, - * /0-23的整数
每月第几天, - * / ? L C W0-31的整数
, - * /1-12的整数或JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC
星期, - * / ? L C #1-7的整数(1表示星期天,2表示星期一)或SUN,MON,TUE,WED,THU,FRI,SAT
年(可选), - * /1970(当前年)-2099的整数
2.2 字符说明
字符名称字符说明
,表示枚举值。例如,在分域使用"5,20",则表示在5分和20分各触发一次。
-表示范围。例如,在分域使用"5-20",则表示5分到20分,每分钟触发一次。
*表示匹配该域的任意值。例如。在分域使用"*",则表示每分钟都会触发一次。
/表示起始时间开始触发,然后每隔固定时间触发一次。例如:在分域使用5/20,表示第5分钟开始触发,每隔20分钟触发一次,即5分、25分、45分都会触发一次。
?只能在"每月第几天"和"星期"两个域使用,表示不指定该值。因为"每月第几天"和"星期"两个如果都指定了值,两个域指定的值之间会出现冲突(如指定每月1号+星期一,有可能2月1号不是星期一)。所以,当两个表达式其中一个被指定了值后,为了避免冲突,需要将另一个子表达式设置为"?"
L只能在"每月第几天"和"星期"两个域使用,表示最后。例如:如果在星期域使用1L,则表示最后一个星期天触发。
W只能出现在每月第几天域,表示有效工作日(周一到周五)。系统将在离指定日期最近的工作日触发,且W的最近寻找不会跨月份。在每月第几天域,LW可一起使用,代表某个月最后一个工作日。例如:“5W”,表示距离5号最近的一个工作日(有可能是5号、4号、6号,即有可能是当天,也可能是向前取工作日,也可能是向后取工作日,但是不会跨月
C根据日历触发,使用较少(未找到相关明确解释,可以忽略此参数)
#只能在"星期"域使用,表示月份中星期几第几个(即月份中第几个星期几)。例如:1#4,表示月份中星期天第四个(即第4个星期天)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值