Cron表達式中的星期的正確的配置


最近再做一個定時任務的需求,使用了Quartz框架,使用了Cron表達式做時間配置,

做一個定時任務,要求在周一至周五上午05:00點生成表單並完成通知。

初始表達式為0 0 5 ? * 1-5   (但是這樣是錯誤的)

錯誤現象:明明設置的是周一至周五生成,但是周五卻沒有觸發定時任務。

后查找源碼發現,周一不是1   周日才是1   犯了一個挺低級的錯誤吧 。

正確表達式:0 0 5 ? * 2-6  或者 0 0 5 ? * MON-FRI (Cron支持配置星期縮寫 MON TUE WED THU FRI SAT SUN)

對於星期的操作,最好可以通過縮寫來完成,更加清晰,

使用數值的話,很容易認為應該從周一開始

 

星期數值枚舉如下

public final static int SUNDAY = 1;
public final static int MONDAY = 2;
public final static int TUESDAY = 3;
public final static int WEDNESDAY = 4;
public final static int THURSDAY = 5;
public final static int FRIDAY = 6;
public final static int SATURDAY = 7;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM