摘要:項目中經常要用到定時任務,比如發郵件短信清理緩存等等創建定時任務非常簡單,只需要幾個注解就可以。會等帶上個任務執行完畢才執行,第一次延遲秒后執行,之后按的規則每秒執行一次通過表達式定義規則詳細請看官方文檔
項目中經常要用到定時任務,比如發郵件短信、清理緩存等等
spingboot 創建定時任務非常簡單,只需要幾個注解就可以。
下面我給一個定時清理緩存的任務,測試程序緩存功能的時候經常要用到。
1、啟動定時任務配置
只需要在 Application上加上 @EnableScheduling 注解, @EnableCaching是啟動緩存配置的
2、創建需要定時執行的方法
在方法上加上注解 @Scheduled(fixedRate=10000) ,下圖是一個定時清理緩存的方法
每10s執行一次:
執行結果:
參加spring官方案例: https://spring.io/guides/gs/s...
3、@Scheduled注解參數:
@Scheduled(fixedRate = 5000) :上一次開始執行時間點之后5秒再執行
@Scheduled(fixedDelay = 5000) :上一次執行完畢時間點之后5秒再執行
*這個與fixedRate區別在于,可以保證任務不會重疊執行,* *fixedRate=5000表示每5s中啟動任務,如果任務執行時間超過了5s中那么就會有多個任務同時執行。* *fixedDelay=5000s會等帶上個任務執行完畢才執行,*
@Scheduled(initialDelay=1000, fixedRate=5000)
:第一次延遲1秒后執行,之后按fixedRate的規則每5秒執行一次
@Scheduled(cron="*/5 * * * * *") :通過cron表達式定義規則
詳細請看官方文檔:
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/73771.html
摘要:對于定時任務類如果不定義線程池,控制臺輸出如下,可以看到不同的定時任務是同一個線程在執行在配置類或者啟動類中增加定時任務的線程池控制臺輸出本節示例代碼已上傳到 一.SpringBoot中開啟定時任務 在spirngboot中使用定時任務非常簡單,只需要在啟動類上增加一個@EnableScheduling注解即可。 @SpringBootApplication @EnableSchedu...
摘要:多線程并發定時任務剛剛看了下實現定時任務的文章,感覺還不錯。存在問題但是后來發現個問題,通過同時測試幾個任務發現,所有的任務都是在同一個線程池中的同一個線程來完成的。 spring-boot | 多線程并發定時任務 剛剛看了下Spring Boot實現定時任務的文章,感覺還不錯。Spring Boot 使用Spring自帶的Schedule來實現定時任務變得非常簡單和方便。在這里個大家...
摘要:前言用組件實現簡易的定時任務功能。步驟創建一個啟動類注意,是關鍵,加了這個注解才能啟動定時任務。編寫定時任務方法可以實現兩種定時,一種是每個一段時間執行一次方法,另一種是執行一次方法之后間隔若干時間后再執行下一次。 前言 用Spring-Context組件實現簡易的定時任務功能。只可以支持較簡單的業務場景,實用價值不高。如果想要投放到生產環境,需要進行一些改造。 步驟 1. pom.x...
本文將告訴你如何使用spring的任務調度。主要使用@Scheduled注解 需要會使用maven 第一步 pom.xml配置 4.0.0 org.xxz scheduled-task-test 1.0 org.springframework.boot spring-boot-starter-parent ...
摘要:由于工作上的原因,需要進行定時任務的動態增刪改查,網上大部分資料都是整合框架實現的。本人查閱了一些資料,發現本身就支持實現定時任務的動態控制。 由于工作上的原因,需要進行定時任務的動態增刪改查,網上大部分資料都是整合quertz框架實現的。本人查閱了一些資料,發現springBoot本身就支持實現定時任務的動態控制。并進行改進,現支持任意多參數定時任務配置 實現結果如下圖所示: sho...
閱讀 3119·2021-09-28 09:42
閱讀 3457·2021-09-22 15:21
閱讀 1129·2021-07-29 13:50
閱讀 3581·2019-08-30 15:56
閱讀 3374·2019-08-30 15:54
閱讀 1201·2019-08-30 13:12
閱讀 1180·2019-08-29 17:03
閱讀 1203·2019-08-29 10:59