今天在項目中遇到了創(chuàng)建定時任務,其參數(shù)就是依據(jù)Cron 表達式虐杯。
Cron表達式是一個字符串玛歌,字符串以5或6個空格隔開,分為6或7個域擎椰,每一個域代表一個含義支子,Cron語法格式如下:
f1 f2 f3 f4 f5 f6 f7(可選的)
秒 分 時 日 月 星期 年
每一個域的解讀和可出現(xiàn)的字符如下:
f1: 秒(0~59)可出現(xiàn)", - * /"四個字符,有效范圍為0-59的整數(shù)
f2: 分鐘(0~59)可出現(xiàn)", - * /"四個字符达舒,有效范圍為0-59的整數(shù)
f3: 小時(0~23)可出現(xiàn)", - * /"四個字符值朋,有效范圍為0-23的整數(shù)
f4: 日 (0~31,但是你需要考慮你月的天數(shù)) 可出現(xiàn)", - * / ? L W C"八個字符巩搏,有效范圍為0-31的整數(shù)
f5: 月(1~12)可出現(xiàn)", - * /"四個字符昨登,有效范圍為1-12的整數(shù)
f6: 星期(1~7 1=SUN 或 SUN,MON贯底,TUE丰辣,WED,THU禽捆,F(xiàn)RI笙什,SAT)可出現(xiàn)", - * / ? L C #"四個字符,有效范圍為1-7的整數(shù)或SUN-SAT兩個范圍胚想。1表示星期天琐凭,2表示星期一, 依次類推
f7: 年份(1970-2099)可出現(xiàn)", - * /"四個字符顿仇,有效范圍為1970-2099年
Cron 符號及其含義:
* :代表整個時間段.
/ :表示每多長時間執(zhí)行一次 0/15表示每隔15分鐘執(zhí)行一次,“0”表示為從“0”分開始淘正;
? :表示每月的某一天,或第幾周的某一天
L :“6L”表示“每月的最后一個星期五”
W:表示為最近工作日
Cron表達式舉例:
(1)0 0 2 1 * ? * 每月的1日的凌晨2點觸發(fā)
(2)0 0 10,14,16 * * ? 每天上午10點臼闻,下午2點鸿吆,4點觸發(fā)
(3)0 0/30 9-17 * * ? 朝九晚五工作時間內每半小時觸發(fā)
(4)0 0 12 * * ? 每天中午12點觸發(fā)
(5) 30 10 * * *? 每小時的10分30秒觸發(fā)