POM.XML文件
<!-- 定時器任務 quartz需要導入的坐標 --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>1.8.5</version> </dependency>
類似於控制器代碼:
package com.xiaowu.quartz.demo; import java.util.Date; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; /*** * * Quartz設置項目全局的定時任務 * * @Component注解的意義 泛指組件,當組件不好歸類的時候,我們可以使用這個注解進行標注。一般公共的方法我會用上這個注解 * * * @author WQ * */ @Component public class QuartzDemo { @Scheduled(cron = "0 0/1 * * * ?") // 每分鍾執行一次 public void work() throws Exception { System.out.println("執行調度任務:"+new Date()); } @Scheduled(fixedRate = 5000)//每5秒執行一次 public void play() throws Exception { System.out.println("執行Quartz定時器任務:"+new Date()); } @Scheduled(cron = "0/2 * * * * ?") //每2秒執行一次 public void doSomething() throws Exception { System.out.println("每2秒執行一個的定時任務:"+new Date()); } @Scheduled(cron = "0 0 0/1 * * ? ") // 每一小時執行一次 public void goWork() throws Exception { System.out.println("每一小時執行一次的定時任務:"+new Date()); } }
啟動SpringBoot項目,即可。
public static void main(String[] args) { SpringApplication.run(Chapter1Application.class, args); }
,截圖如下: