sprig-schedule:一句話——作業調度
spring-schedule Cron表達式:
Cron 表達式的格式:秒(seconds) 分(minutes) 時(hours) 日(day-of-month) 月(month) 周(day-of-week) 年(year非必須)
各個格式允許的值和允許的特殊字符
字段名 | 允許的值 | 允許的特殊字符 |
秒 | 0-59 | , - * / |
分 | 0-59 | , - * / |
小時 | 0-23 | , - * / |
月內日期 | 1-31 | , - * ? / L W C |
月 | 1-12 或 JAN-DEC | , - * / |
周內日期 | 1-7 或 SUN-SAT | , - * ? / L C # |
年(非必須) | 留空 或 1970-2099 | , - * / |
特殊字符的含義
常用表達式:
0 0 0 * * ? 每天0點一次
0 0 23 * * ? 每天23點一次
0 */1 * * * ? 每1分鐘(每個1分鐘的整數倍)
0 0 */6 * * ? 每6個小時(每個6小時的整數倍)
0 0 */1 * * ? 每1個小時(每個1小時的整數倍)
Cron表達式生成地址:http://cron.qqe2.com/
下面正式在項目中使用spring-schedule
一 spring-schedule配置
在spring配置文件加入以下標籤:
<task:annotation-driven />
二 創建一個用於Task定時任務的類
package com.mmall.task; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; /** * @author Luyue * @date 2018/8/19 20:31 **/ @Component @Slf4j public class TestTask { /** * 註解中填入cron表達式 * 下述是每一分鐘執行 */ @Scheduled(cron = "0 0/1 * * * ? ") public void closeOrderTaskV1() { log.info("定時關單開始........."); /* 執行所要完成的業務 */ log.info("定時關單關閉........."); } }
三 查看效果