1. 程式人生 > >【知識積累】Quartz的使用

【知識積累】Quartz的使用

一、cron表示式

格式:【秒】 【分】 【時】 【日】 【月】 【周】 【年】

說明 必填 範圍 萬用字元
Y 0~59 , - * /
Y 0~59 , - * /
Y 0~23 , - * /
Y 1~31 , - * / ? L W
Y 1~12 OR JAN~DEC , - * /
Y 1~7 OR SUM~SAT , - * / ? L #
N empty OR 1970~2099 , - * /

萬用字元說明:

,:表示與。例如:在周的位置上配置MON,TUE,WED,則週一、週二和週三觸發;

-:表示區間。例如:在小時的位置上配置7-10,則7點、8點、9點、10點會觸發;

*:表示所有值。例如:配置在秒的位置上,則每一秒都會觸發;

/:表示遞增。例如:0/5,則從0開始,每次增加5,0~5~10~15~20……;

?:表示不指定值。只能在的位置上配置。

L:表示最後的意思。只能在

的位置上配置。例如:在日的位置上配置,表示當月的最後一天(二月會判斷是否是閏年)。在周的位置上,表示週六或者7。

W:表示離指定日期的最近那個工作日(週一~週五)。只能在的位置上配置。例如:日的位置上配置10W,則表示每月的10號最近的那個工作日觸發。如果10號是週六,則9號(週五)觸發,如果10號是週日,則11號(週一)觸發,如果是工作日,則在該日觸發。配置1W,則表示每月的1號往後最近的工作日觸發。如果1號在週六或者週日,則在下週一觸發,如果是工作日,則在該日觸發。(不允許區間,只能配置數字)

#:序號,表示每月的第幾周星期幾。只能在的位置上配置。例如:0 0 0 5 6#2 *,五月的第二週的星期六觸發,0 0 0 6 6#3 *, 六月的第三週的星期六觸發。

LW(配合使用):在日的位置上使用LW,則表示本月的最後一個工作日觸發。

周的位置上,不區分大小寫。

二、web.xml配置


三、載入Quartz配置檔案


四、Quartz配置檔案





五、重寫org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean












六、MyTestJobOne


七、MyTestJobTwo
八、執行結果