項目中常常要用到定時任務,好比發郵件短信、清理緩存等等
spingboot 建立定時任務很是簡單,只須要幾個註解就能夠。
下面我給一個定時清理緩存的任務,測試程序緩存功能的時候常常要用到。spring
一、啓動定時任務配置緩存
只須要在 Application上加上 @EnableScheduling
註解, @EnableCaching是啓動緩存配置的ide
二、建立須要定時執行的方法
在方法上加上註解 @Scheduled(fixedRate=10000)
,下圖是一個定時清理緩存的方法
每10s執行一次:測試
參加spring官方案例: https://spring.io/guides/gs/s...
三、@Scheduled註解參數:ui
@Scheduled(fixedRate = 5000)
:上一次開始執行時間點以後5秒再執行@Scheduled(fixedDelay = 5000)
:上一次執行完畢時間點以後5秒再執行spa
*這個與fixedRate區別在於,能夠保證任務不會重疊執行,* *fixedRate=5000表示每5s中啓動任務,若是任務執行時間超過了5s中那麼就會有多個任務同時執行。* *fixedDelay=5000s會等帶上個任務執行完畢才執行,*
@Scheduled(initialDelay=1000, fixedRate=5000)
@Scheduled(cron="*/5 * * * * *")
:經過cron表達式定義規則詳細請看官方文檔:3d