1.引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
2.定义任务类
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;
import org.springframework.stereotype.Component;
/**
* 定义任务类
*/
@Component
public class TestJob extends QuartzJobBean {
@Override
protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
System.out.println("定时任务执行:"+ System.currentTimeMillis());
}
}
3.定义配置类
import com.example.apple.job.TestJob;
import org.quartz.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* 调度器
*/
@Configuration
public class ScheduleConfig {
/**
* 任务
* @return
*/
@Bean
public JobDetail testJobDetail(){
return JobBuilder
.newJob(TestJob.class)
.storeDurably(true)
.build();
}
/**
* 触发器
* @return
*/
@Bean
public Trigger testTrigger(){
return TriggerBuilder.newTrigger()
.forJob(testJobDetail())
.startNow()
.withSchedule(CronScheduleBuilder.cronSchedule("0 */1 * * * ?"))
.build();
}
}