參考位址:http://www.cnblogs.com/chen-lhx/p/5581129.html
spring中使用定時任務
基于xml配置檔案使用定時任務
首先配置spring開啟定時任務
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | |
定義自己的任務執行邏輯
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | |
基于注解使用定時任務
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | |
這樣,當項目啟動,定時任務就會按照規則按時執行了。
Spring Boot中使用定時任務
Spring Boot中使用更加友善。
引入
springboot starter
包
1 2 3 4 | |
在程式入口啟動類添加
@EnableScheduling
,開啟定時任務功能
1 2 3 4 5 6 7 | |
定義定時任務邏輯
1 2 3 4 5 6 7 8 9 10 | |
任務執行規則說明
先來看看
@Scheduled
注解的源碼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
可以看出,注解中可以傳8種參數:
- cron:指定cron表達式
- zone:預設使用伺服器預設時區。可以設定為
中的zoneIdjava.util.TimeZone
- fixedDelay:從上一個任務完成開始到下一個任務開始的間隔,機關毫秒
- fixedDelayString:同上,時間值是
類型String
- fixedRate:從上一個任務開始到下一個任務開始的間隔,機關毫秒
- fixedRateString:同上,時間值是
類型String
- initialDelay:任務首次執行延遲的時間,機關毫秒
- initialDelayString:同上,時間值是
String
類型
cron表達式的使用方法