日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springboot配置定时任务及常用的cron表达式

發布時間:2024/2/28 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot配置定时任务及常用的cron表达式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

springboot引入定時任務


springboot引入定時任務主要需要以下幾步:
1.引入相關的依賴
2.配置程序開啟定時任務
3. 編寫定時任務

引入相關的依賴

只用引一個基礎的web的依賴就可以了

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.2.1.RELEASE</version></dependency>

配置程序開啟定時任務

只需要在Springboot的Main函數的那個類上加個注解就可以了

package com.jd;/*** 只需要在這里面加上一個@EnableScheduling這個注解就可以了*/ @SpringBootApplication @EnableScheduling public class Demo {public static void main(String[] args) {SpringApplication.run(Demo.class, args);} }

編寫定時任務
一般定時任務都會放在task包下面,代碼如下:

package com.jd;@Component public class TestTask {/*** 定時任務的類和別的springBean沒什么區別* 方法上要加@Scheduled,里面寫定時的cron表達式*/@Scheduled(cron = "0/5 * * * * *")public void testSchedule(){System.out.println(new Date());System.out.println("這個是每5秒執行一次");} }

?結果展示:


常用的cron表達式

對于cron表達式不太熟悉的同學,可以去這個在線網站進行生成https://qqe2.com/cron
cron表達式是從后往前讀的,遇到 * 就讀每XX, 遇到數字就讀 從第XX開始, 遇到 / 就讀每隔多XX最后加個執行
如上述DEMO中

cron = "0/5 * * * * *"

每星期,每年,每月,每天,每小時,每分鐘,從第0秒開始每隔5秒執行一次
以此類推,有以下常用表達式:
每隔10分鐘執行一次:0 0/10 * * * *
每天18點執行一次:0 0 18 * * *
每月1號凌晨3點執行一次:0 0 3 1 * *

DEMO總評

定時任務這塊,一般小項目會這樣去寫,在實際生產中,會使用分布式定時任務框架去集中配置,不會分散在各個應用里面,主要的難點在于cron表達式,不好寫,需要多總結,才能寫出對的cron表達式

?

總結

以上是生活随笔為你收集整理的springboot配置定时任务及常用的cron表达式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。