Springboot-之定時任務,啟動執行任務
定時任務
springboot是整合了定時任務的外掛的,使用定時任務的時候可以在類上加註解。
@Scheduled ,對就張這樣,支援Cron表示式(在某天某一時間執行),和定時執行(隔相同時間執行)。
@Scheduled(cron="0 0 0 1/1 * ? ") //每天00:00:00執行一次。
@Scheduled(fixedRate =50000) //當前方法開始執行後,50秒再執行一次。
@Scheduled(fixedDelay =50000) //當前方法執行結束後,50秒再執行一次。
注意啦 fixedRate是開始後!!!執行,Delay是執行結束後!!!
啟動springboot專案啟動的時候,所有的定時專案都會跟著執行。 如果想啟動專案時候讓定時任務延遲執行,就要這樣
@Scheduled(initialDelay = 10000, fixedRate = 50000) //專案啟動後延遲10秒執行方法 50秒再執行一次。
也沒嘛好說的,程式碼就上這麼多把
@Scheduled(fixedRate = 50000)
public void rePush() throws Exception {
log.info("================開始執行定時檢測未派單狀態的單子進行派單操作===================");
List<CustomerDispatcherRecord> cdrs = customerDispatcherRecordMapper.selectByStaus("1");
for(CustomerDispatcherRecord cdr:cdrs){
log.info("================進行二次派單操作 派的單子是"+cdr+"=========================");
pushMsgSerivce.secondPushMsg(cdr.getCustomerInfoId(),cdr.getId());
}
}
啟動執行任務
要實現CommandLineRunner介面,這個介面是springboot自帶的,然後複寫run方法就可以啦。很簡單很簡單。
public class SendOrderTask implements CommandLineRunner {
@Override
public void run(String... strings) throws Exception {
xxxxx
}
}
相關文章
- laravel框架任務排程(定時執行任務)Laravel框架
- SpringBoot執行定時任務@ScheduledSpring Boot
- Django配置celery執行非同步任務和定時任務Django非同步
- php後臺定時執行任務PHP
- 『學了就忘』Linux系統定時任務 — 88、迴圈執行定時任務Linux
- Laravel 定時任務突然無法執行Laravel
- PHP定時執行任務的實現PHP
- python 定時任務之 schedulePython
- 定時任務
- 玩轉SpringBoot之定時任務@Scheduled執行緒池配置Spring Boot執行緒
- SpringBoot與非同步任務、定時任務、郵件任務Spring Boot非同步
- Spring Task 定時任務 - 多執行緒配置Spring執行緒
- 『學了就忘』Linux系統定時任務 — 87、只執行一次的定時任務Linux
- Java之定時任務全家桶Java
- SpringTask定時任務Spring
- Oracle定時任務Oracle
- Navicat定時任務
- schedule 定時任務
- 定時任務scheduler
- 定時任務操作
- @Scheduled 定時任務
- Linux 定時任務Linux
- Linux | 定時任務Linux
- Java 定時任務Java
- At 、Crontabl定時任務
- crontab定時任務
- laravel定時任務Laravel
- SpringBoot定時任務Spring Boot
- springboot:定時任務Spring Boot
- 定時任務管理
- ubuntu定時任務Ubuntu
- 定時任務crond服務
- SpringBoot系列——動態定時任務Spring Boot
- Linux系統中延時任務及定時任務Linux
- 如何使用cron任務每隔2天在固定時間執行任務
- Spring之定時任務基本使用篇Spring
- Linux系統管理之定時任務Linux
- python定時任務之小試牛刀Python