1.開啟定時排程,給主應用新增@enablescheduling // 開啟定時任務功能
@enablescheduling // 開啟定時任務功能2.編寫scheduledservice,給service新增@component@enableasync
public static void main(string args)
@override //為了打包springboot專案
return builder.sources(this.getclass());
}}
//定時排程
@component
public class scheduledservice
}
3.執行,系統則自動呼叫
4. cron屬性
這是乙個時間表示式,可以通過簡單的配置就能完成各種時間的配置,我們通過cron表示式幾乎可以完成任意的時間搭配,它包含了六或七個域:
cron表示式語法
[秒] [分] [小時] [日] [月] [周] [年]
注:[年]不是必須的域,可以省略[年],則一共6個域
seconds: 可出現", - * /"四個字元,有效範圍為0-59的整數
minutes: 可出現", - * /"四個字元,有效範圍為0-59的整數
hours: 可出現", - * /"四個字元,有效範圍為0-23的整數
dayofmonth: 可出現", - * / ? l w c"八個字元,有效範圍為0-31的整數
month: 可出現", - * /"四個字元,有效範圍為1-12的整數或jan-dec
dayofweek: 可出現", - * / ? l c #"四個字元,有效範圍為1-7的整數或sun-sat兩個範圍。1表示星期天,2表示星期一, 依次類推
year: 可出現", - * /"四個字元,有效範圍為1970-2023年
下面簡單舉幾個例子:
"0 0 12 * * ?" 每天中午十二點觸發
"0 15 10 ? * *" 每天早上10:15觸發
"0 15 10 * * ?" 每天早上10:15觸發
"0 15 10 * * ? *" 每天早上10:15觸發
"0 15 10 * * ? 2005" 2023年的每天早上10:15觸發
"0 * 14 * * ?" 每天從下午2點開始到2點59分每分鐘一次觸發
"0 0/5 14 * * ?" 每天從下午2點開始到2:55分結束每5分鐘一次觸發
"0 0/5 14,18 * * ?" 每天的下午2點至2:55和6點至6點55分兩個時間段內每5分鐘一次觸發
"0 0-5 14 * * ?" 每天14:00至14:05每分鐘一次觸發
"0 10,44 14 ? 3 wed" 三月的每週三的14:10和14:44觸發
"0 15 10 ? * mon-fri" 每個周
一、周二、周
三、周四、周五的10:15觸發
Spring Quartz定時排程
一 所需的jar包 二 定時排程的配置和使用 配置 quartz 2 建立任務類 public class quartztest 當專案啟動時,每兩分鐘 從每小時的0分0秒開始,隔兩分鐘再去執行一次,到每個小時的59分為止 就會去執行quartztest 類中在配置檔案指定的execute方法。三 ...
Spring 定時排程
一 spring提供兩種觸發器 1 每隔指定時間則觸發一次,在quartz中對應的觸發器為 org.springframework.scheduling.quartz.triggerbean 2 每到指定時間則觸發一次,在quartz中對應的觸發器為 org.springframework.sche...
Quartz定時排程
quartz定時排程 在包含了spring依賴包情況下加入quartz所依賴包 org.quartz schedulergroupid quartzartifactid 2.2.1version dependency spring用的4.0.2版本 需要注意的是quartz的版本區別 1.x系列的對...