欄位名
允許的值
允許的特殊字元
秒0-59
, – * /
分0-59
, – * /
時0-23
, – * /
日1-31
, – * / l w c
月1-12 or jan-dec
, – * /
周1-7 or sun-sat
, – * ? / l c # mon fri
年(可選字段)
empty, 1970-2099
, – * /
允許的特殊字元:
* 字元代表:代表所有可能的值。因此,「*」在month中表示每個月,在day-of-month中表示每天,在hours表示每小時
「,」字元:指定數個值。例如:在minutes子表示式中,「5,20」表示在5分鐘和20分鐘觸發。
「-」字元:指定乙個值的範圍
「/」字元:指定乙個值的增加幅度。n/m表示從n開始,每次增加m。例如:在minutes子表示式中,「0/15」表示從0分鐘開始,每15分鐘執行一次。「3/20"表示從第三分鐘開始,每20分鐘執行一次。和"3,23,43」(表示第3,23,43分鐘觸發)的含義一樣。
「l」字元:用在日表示乙個月中的最後一天,用在周表示該月最後乙個星期x
「w」字元:指定離給定日期最近的工作日(周一到周五)
「#」字元:表示該月第幾個周x。6#3表示該月第3個周五
? 字元:用在day-of-month和day-of-week中,指「沒有具體的值」。當兩個子表示式其中乙個被指定了值以後,為了避免衝突,需要將另外乙個的值設為「?」。例如:想在每月20日觸發排程,不管20號是星期幾,只能用如下寫法:0 0 0 20 * ?,其中最後以為只能用「?」,而不能用「*」。
c:該字元只在日期和星期欄位中使用,代表「calendar」的意思。它的意思是計畫所關聯的日期,如果日期沒有被關聯,則相當於日曆中所有日期。例如5c在日期欄位中就相當於日曆5日以後的第一天。1c在星期欄位中相當於星期日後的第一天。
cron表示式對特殊字元的大小寫不敏感,對代表星期的縮寫英文大小寫也不敏感。
cron表示式範例例:
1. 每隔5秒執行一次:*/5 * * * * ?
2. 每隔1分鐘執行一次:0 */1 * * * ?
3. 每天23點執行一次:0 0 23 * * ?
4. 每天凌晨1點執行一次:0 0 1 * * ?
5. 每月1號凌晨1點執行一次:0 0 1 1 * ?
6. 每月最後一天23點執行一次:0 0 23 l * ?
7. 每週星期天凌晨1點執行一次:0 0 1 ? * l
8. 在26分、29分、33分執行一次:0 26,29,33 * * * ?
9. 每天的0點、13點、18點、21點都執行一次:0 0 0,13,18,21 * * ?
>
>
org.quartz-schedulergroupid
>
>
quartzartifactid
>
>
2.2.1version
>
>
>
>
slf4j-apiartifactid
>
>
org.slf4jgroupid
>
exclusion
>
exclusions
>
dependency
>
>
>
org.springframeworkgroupid
>
>
spring-context-supportartifactid
>
dependency
>
>
>
org.springframeworkgroupid
>
>
spring-txartifactid
>
dependency
>
public
class
myquartz
implements
job}
@configuration
public
class
quartzconfig
/** * 建立scheduler物件
* 這裡我們根據自己的需求可以選擇使用 ******trigge***ctorybean物件或者 crontrigge***ctorybean物件作為引數
* @return 程式排程工廠
*/@bean
public schedule***ctorybean schedule***ctorybean
(crontrigge***ctorybean crontrigge***ctorybean)
/** * 建立 trigger 物件
* 和crontrigge***ctorybean()方法類似、基於簡單的時間排程規則
* @param jobdetailfactorybean
* @return 基於排程間隔時間
*/@bean
public ******trigge***ctorybean ******trigge***ctorybean
(jobdetailfactorybean jobdetailfactorybean)
/** * 建立 trigger 物件
* 和******trigge***ctorybean()方法類似、基於cron表示式、可以滿足複雜的時間排程規則
* @param jobdetailfactorybean
* @return 基於時間刻度(可以設定具體時間)
*/@bean
public crontrigge***ctorybean crontrigge***ctorybean
(jobdetailfactorybean jobdetailfactorybean)
}
@enablescheduling
public
class
}
Spring boot定時任務及整合Quartz
各種企業應用幾乎都會用到任務排程的需求,比如論壇每天凌晨統計使用者的 積分,每隔半個小時生成精華文章 spring boot中使用定時任務 spring boot中使用定時任務只要使用兩個註解 enablescheduling scheduled 在spring boot的啟動類上新增 enable...
springBoot整合dubbo整合專案
傳統spring 整合dubbo,需要繁瑣的編寫一堆堆的 xml 配置檔案 而springboot整合dubbo後,不在需要寫 xml,通過jar包引用,完 成整合,通過註解的形式完成配置。提高我們的開發效率 目錄結構 1 服務層生產者開發 hs ldm server service 1.1新增du...
SpringBoot整合系列 整合Swagger2
io.springfox springfox swagger2 2.7.0 io.springfox springfox swagger ui 2.7.0 一般無配置項,必要時可以新增自定義配置項,在配置類中讀取 swagger2的配置內容僅僅就是需要建立乙個docket例項 configurati...