cron表達式,輕鬆搞定定時任務按日曆調度

實現定時任務的方案有多種,比如jdk timer、spring task和quartz,其中支持按日曆調度的方案有spring task和quartz。

cron表達式

Cron 表達式是由七個子表達式組成的字符串,用於描述各個細節,子表達式通過空格分隔。

比如:0 0/5 * * * ? 每隔5分鐘執行

  • 秒(0~59)
  • 分鐘(0~59)
  • 小時(0~23)
  • 日(1~31)
  • 月(1~12)
  • 星期(填寫MON,TUE,WED,THU,FRI,SAT,SUN,或數字1~7 1表示MON,依次類推)
  • 年(可以不指定,有用到時需填寫,比如:2020表示2020年,2020,2021表示2020年和2021年)

通配符介紹

  • “/”字符表示指定數值的增量
  • “*”字符表示所有可能的值
  • “-”字符表示區間範圍
  • "," 字符表示列舉
  • “?”字符只能在日和星期中指定使用,其作用為不指定。不支持同時指定星期幾和幾月參數

示例

0/3 * * * * ? 每隔3秒執行

0 0/1 * * * ? 每隔1分鐘執行

0 0 9 * * ? 表示每天9點執行

0 0/20 9-10 1,20 *? 每個月1號和20號上午9點到11點之間,每隔20分鐘執行

0 0 12 ? * WEN 每週三12點執行

0 30 9 ? * MON-FRI 每月的週一到週五9點30分執行

推薦一個在線cron表達式生成器

http://cron.qqe2.com/


cron表達式,輕鬆搞定定時任務按日曆調度


分享到:


相關文章: