啟動類上使用註解@enablescheduling開啟定時任務支援
建立任務類
@slf4j
@component
@async//非同步
public class scheduledservice ",system.currenttimemillis());
}@scheduled(fixedrate = 5000)
public void scheduled1() ", system.currenttimemillis());
}@scheduled(fixeddelay = 5000)
public void scheduled2() ",system.currenttimemillis());
}}
新建非同步配置類
@configuration//表明配置類
@enableasync//開啟非同步事件支援
public class asyncconfig
}
每隔5秒執行一次:/5 * ?
每隔1分鐘執行一次:0 /1 ?
0 0 10,14,16 ? 每天上午10點,下午2點,4點
0 0/30 9-17 ? 朝九晚五工作時間內每半小時
0 0 12 ? * wed 表示每個星期三中午12點
「0 0 12 ?」 每天中午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期間的每1分鐘觸發
「0 0/5 14 ?」 在每天下午2點到下午2:55期間的每5分鐘觸發
「0 0/5 14,18 ?」 在每天下午2點到2:55期間和下午6點到6:55期間的每5分鐘觸發
「0 0-5 14 ?」 在每天下午2點到下午2:05期間的每1分鐘觸發
「0 10,44 14 ? 3 wed」 每年三月的星期三的下午2:10和2:44觸發
「0 15 10 ? * mon-fri」 周一至周五的上午10:15觸發
「0 15 10 15 * ?」 每月15日上午10:15觸發
「0 15 10 l * ?」 每月最後一日的上午10:15觸發
「0 15 10 ? * 6l」 每月的最後乙個星期五上午10:15觸發
「0 15 10 ? * 6l 2002-2005」 2023年至2023年的每月的最後乙個星期五上午10:15觸發
「0 15 10 ? * 6#3」 每月的第三個星期五上午10:15觸發
建立定時器,從資料庫中讀取任務執行時間
@configuration //標記配置類
public class dynamicscheduletask implements schedulingconfigurer
返回執行週期(date)
return new crontrigger(cron).nextexecutiontime(triggercontext);});
}}
org.springframework.boot
spring-boot-starter-quartz
任務類
public class testquartz extends quartzjobbean
}
配置類
@configuration
public class quartzconfig
@bean
public trigger testquartztrigger()
}
SpringBoot 定時任務
第一步 在啟動類中加入如下註解 enablescheduling public class public static void main string args 注意 enablescheduling必須加,否則無法開啟定時任務 第二步 建立定時任務 component public class ...
Spring boot定時任務
最近做專案,需要使用定時任務,半個小時去更新redis資料,於是便學習了一下經驗。希望可以幫到你們。定時任務可使用三種 created by fx on 2017 9 4.component allargsconstructor public class featuredatatask 實現乙個任務...
Spring boot 定時任務
1.在啟動類上加 enablescheduling註解 package com.example.demo import org.springframework.scheduling.annotation.enablescheduling enablescheduling public static ...