關於springboot如何做一個定時任務
關於springboot如何做一個定時任務
- 首先我們需要用到Tomcat的監聽器ServletContextListener,我們將需要寫的一個定時任務類繼承ServletContextListener,ServletContextListener有兩個重寫方法,分別是contextInitialized和contextDestroyed,將你需要伺服器開始時要監控的定時任務寫在contextInitialized方法中,將你需要在伺服器關閉時做的一些處理寫在contextDestroyed,就可以很方便的完成你的需求,程式碼如下:
@WebListener
public class ContextListener implements ServletContextListener {
@Autowired
private CustomerService customerServiceImpl;
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
// 定時任務
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
Calendar cal = Calendar.getInstance();
int day_of_month = cal.get(Calendar.DAY_OF_MONTH);
if (day_of_month == 20) {
customerServiceImpl.userBonus();
}
}
}, 0, 3600 * 24 * 1000);
}
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
System.out.println("Destroyed");
}
}
2.@WebListener註解是springboot監聽器的一個註解,所有監聽器實體類都需要加上這個註解,並且在springboot的啟動類Application當中,還需要加上一個能掃描全域性的監聽器過濾器的一個註解,那就是@ServletComponentScan,程式碼如下:
@ServletComponentScan
@SpringBootApplication
@MapperScan("*.mapper")
public class MMApplication {
public static void main(String[] args) {
SpringMMApplication.run(MMApplication.class, args);
}
}
相關文章
- 關於beego的定時任務Go
- SpringBoot定時任務Spring Boot
- springboot:定時任務Spring Boot
- 關於定時任務的一些雜談
- 如何設定一個定時任務?
- springboot(九):定時任務Spring Boot
- springboot定時任務之旅Spring Boot
- SpringBoot 定時任務ScheduledSpring Boot
- springboot定時任務@ScheduledSpring Boot
- SpringBoot與非同步任務、定時任務、郵件任務Spring Boot非同步
- SpringBoot整合Quartz定時任務Spring Bootquartz
- linux實現一個定時任務Linux
- SpringBoot執行定時任務@ScheduledSpring Boot
- springboot Quartz 定時任務工具類Spring Bootquartz
- SpringBoot系列——動態定時任務Spring Boot
- SpringBoot如何實現定時任務Spring Boot
- Springboot-之定時任務,啟動執行任務Spring Boot
- spring定時任務相關Spring
- SpringBoot第十七篇:定時任務Spring Boot
- java springboot 實現定時器任務JavaSpring Boot定時器
- springboot定時任務優雅退出方案Spring Boot
- 定時任務
- 基於redis實現定時任務Redis
- SpringBoot之非同步、定時、郵件任務Spring Boot非同步
- SpringBoot踩坑日記-定時任務不定時了?Spring Boot
- Java 中的定時任務(一)Java
- 定時任務發展史(一)
- 定時任務scheduler
- At 、Crontabl定時任務
- crontab定時任務
- 定時任務管理
- ubuntu定時任務Ubuntu
- schedule 定時任務
- Oracle定時任務Oracle
- laravel定時任務Laravel
- Navicat定時任務
- Java 定時任務Java
- @Scheduled 定時任務