* * * * * * *
语法:秒 分 时 日 月 周 年(srping不支持年写法)
网址
Cron Trigger Tutorial (quartz-scheduler.org)http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html
解析:
秒的位置值可以是 0到59,
分钟位置值可以是 0-59,
小时的位置可以是 0-23,
日可以是 1到31,
月可以是 1-12 或者 JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV ,DEC,
周可以是 1-7 或者 SUN, MON, TUE, WED, THU, FRI , SAT
年 spring 不支持写法,除了年以外 其他都是必填的。
2-1 ,:用于枚举
例如 (cron="7,9,23 * * * * ?"):任意时刻的 7,9,23 秒启动任务
2-2:- :用于范围:
例如 (cron="7-20 * * * * ?") : 任意时刻的 7-20 秒之间,每秒启动
2-3: *:任意 表示所有;
指定位置的任意时刻都可以
2-4:/:步长;
例如 (cron="7/5 * * * * ?"):第 7 秒启动,每 5 秒一次;
例如 (cron="*/5 * * * * ?"):任意秒启动,每 5 秒一次
以上四个比较常用
2-5 ?:(出现在日和周几的位置) 表示未说明的值,即不关心它为何值
为了防止日和周冲突,在周和日上如果要写通配符使用?,
例如 每月一号 cron写法
错误 (cron="* * * 1 * SUN") 错误写法 因为每月一号不一定是周一,所以?解决 日和周的冲突写法
正确 (cron="* * * 1 * ?"):每月的 1号 启动这个任务
2-6 : L:(出现在日和周的位置)
L 表示 last: 最后一个 (cron="* * * ? * 3L"):每月的最后一个周二
2-7 : W: Work Day:工作日
(cron="* * * W * ?"):每个月的工作日触发 (cron="* * * LW * ?"):每个月的最后一个工作日触发
2-8 #:用法
#:第几个 (cron="* * * ? * 5#2"):每个月的第 2 个周
一些cron表达式案例
*/5 * * * * ? 每隔5秒执行一次
0 */1 * * * ? 每隔1分钟执行一次
0 0 5-15 * * ? 每天5-15点整点触发
0 0/3 * * * ? 每三分钟触发一次
0 0-5 14 * * ? 在每天下午2点到下午2:05期间的每1分钟触发
0 0/5 14 * * ? 在每天下午2点到下午2:55期间的每5分钟触发
0 0/5 14,18 * * ? 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时
0 0 10,14,16 * * ? 每天上午10点,下午2点,4点
0 0 12 ? * WED 表示每个星期三中午12点
0 0 17 ? * TUES,THUR,SAT 每周二、四、六下午五点
0 10,44 14 ? 3 WED 每年三月的星期三的下午2:10和2:44触发
0 15 10 ? * MON-FRI 周一至周五的上午10:15触发
0 0 23 L * ? 每月最后一天23点执行一次
0 15 10 L * ? 每月最后一日的上午10:15触发
0 15 10 ? * 6L 每月的最后一个星期五上午10:15触发
0 15 10 * * ? 2005 2005年的每天上午10:15触发
0 15 10 ? * 6L 2002-2005 2002年至2005年的每月的最后一个星期五上午10:15触发
0 15 10 ? * 6#3 每月的第三个星期五上午10:15触发
"30 * * * * ?" 每半分钟触发任务
"30 10 * * * ?" 每小时的10分30秒触发任务
"30 10 1 * * ?" 每天1点10分30秒触发任务
"30 10 1 20 * ?" 每月20号1点10分30秒触发任务
"30 10 1 20 10 ? *" 每年10月20号1点10分30秒触发任务
"30 10 1 20 10 ? 2011" 2011年10月20号1点10分30秒触发任务
"30 10 1 ? 10 * 2011" 2011年10月每天1点10分30秒触发任务
"30 10 1 ? 10 SUN 2011" 2011年10月每周日1点10分30秒触发任务
"15,30,45 * * * * ?" 每15秒,30秒,45秒时触发任务
"15-45 * * * * ?" 15到45秒内,每秒都触发任务
"15/5 * * * * ?" 每分钟的每15秒开始触发,每隔5秒触发一次
"15-30/5 * * * * ?" 每分钟的15秒到30秒之间开始触发,每隔5秒触发一次
"0 0/3 * * * ?" 每小时的第0分0秒开始,每三分钟触发一次
"0 15 10 ? * MON-FRI" 星期一到星期五的10点15分0秒触发任务
"0 15 10 L * ?" 每个月最后一天的10点15分0秒触发任务
"0 15 10 LW * ?" 每个月最后一个工作日的10点15分0秒触发任务
"0 15 10 ? * 5L" 每个月最后一个星期四的10点15分0秒触发任务
"0 15 10 ? * 5#3" 每个月第三周的星期四的10点15分0秒触发任务