quartz cron表達式

Cron表達式是由6所需的字段和一個可選字段由空格分隔 spa

Cron表達式的格式:秒 分 時 日 月 周 年(可選) ci

Field Name
Allowed Values
Allowed Special Characters
Seconds
0-59
, - * /
Minutes
0-59
, - * /
Hours
0-23
, - * /
Day-of-month
1-31
, - * ? / L W
Month
1-12 or JAN-DEC
, - * /
Day-of-Week
1-7 or SUN-SAT
, - * ? / L #
Year (Optional)
empty, 1970-2199
, - * /


「*」字符被用來指定全部的值。如:"*"在分鐘的字段域裏表示「每分鐘」。 io

「?」字符只在日期域和星期域中使用。它被用來指定「非明確的值」。當你須要經過在這兩個域中的一個來指定一些東西的時候,它是有用的。因爲"月份中的日期"和"星期中的日期"這兩個元素互斥的,必需要對其中一個設置一個問號. table

「-」字符被用來指定一個範圍。如:「10-12」在小時域意味着「10點、11點、12點」。"0 0 9 ? * 2-6" 週一到週五天天上午9點 ast

「,」字符被用來指定另外的值。如:「MON,WED,FRI」在星期域裏表示」星期1、星期3、星期五」。 im

「/」字符用於指定增量。如:「0/15」在秒域意思是每分鐘的0,15,30和45秒。「5/15」在分鐘域表示每小時的5,20,35和50。符號「」在「/」前面(如:/10)等價於0在「/」前面(如:0/10)。記住一條本質:表達式的每一個數值域都是一個有最大值和最小值的集合,如:秒域和分鐘域的集合是0-59,日期域是 1-31,月份域是1-12。字符「/」能夠幫助你在每一個字符域中取相應的數值。如:「7/6」在月份域的時候只有當7月的時候纔會觸發,並非表示每一個6月。 英文

L是‘last’的省略寫法,在day-of-month和day-of-week域兩個字段中意思不一樣,例如day-of- month域中表示一個月的最後一天("0 15 10 L * ?"每個月最後一日的上午10:15觸發)。若是在day-of-week域表示‘7’或者‘SAT’,若是在day-of-week域中前面加上數字,它表示一個月的最後星期幾,例如‘6L’就表示一個月的最後一個星期五。 tab

字符「W」只容許日期域出現。這個字符用於指定日期的最近工做日。例如:若是你在日期域中寫 「15W」,表示:這個月15號最近的工做日。因此,若是15號是週六,則任務會在14號觸發。若是15好是週日,則任務會在週一也就是16號觸發。若是是在日期域填寫「1W」即便1號是週六,那麼任務也只會在下週一,也就是3號觸發,「W」字符指定的最近工做日是不可以跨月份的。字符「W」只能配合一個單獨的數值使用,不可以是一個數字段,如:1-15W是錯誤的。 集合

「L」和「W」能夠在日期域中聯合使用,LW表示這個月最後一週的工做日。 di

字符「#」只容許在星期域中出現。這個字符用於指定本月的某某天。例如:「6#3」表示本月第三週的星期五(6表示星期五,3表示第三週)。「2#1」表示本月第一週的星期一。「4#5」表示第五週的星期三。(用在母親節和父親節再合適不過了)

 小提示:
 周字段的設置,若使用英文字母是不區分大小寫的 MON 與mon相同.

例子列舉:

"0 0 12 * * ?"天天中午12點觸發
"0 15 10 ? * *"天天上午10:15觸發
"0 15 10 * * ?"天天上午10:15觸發
"0 15 10 * * ? *"天天上午10:15觸發
"0 15 10 * * ? 2005"2005年的天天上午10:15觸發
"0 * 14 * * ?"在天天下午2點到下午2:59期間的每1分鐘觸發
"0 0/5 14 * * ?"在天天下午2點到下午2:55期間的每5分鐘觸發
"0 0/5 14,18 * * ?"在天天下午2點到2:55期間和下午6點到6:55期間的每5分鐘觸發
"0 0-5 14 * * ?"在天天下午2點到下午2:05期間的每1分鐘觸發
"0 10,44 14 ? 3 WED"每一年三月的星期三的下午2:10和2:44觸發
"0 15 10 ? * MON-FRI"週一至週五的上午10:15觸發
"0 15 10 15 * ?"每個月15日上午10:15觸發
"0 15 10 L * ?"每個月最後一日的上午10:15觸發
"0 15 10 ? * 6L"每個月的最後一個星期五上午10:15觸發
"0 15 10 ? * 6L 2002-2005"2002年至2005年的每個月的最後一個星期五上午10:15觸發
"0 15 10 ? * 6#3"每個月的第三個星期五上午10:15觸發
相關文章
相關標籤/搜索