关于springboot集成quartz完成自动调度
一、添加依赖
<!--quartz定时调度依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId> </dependency>
二、创建任务类,继承QuartzJobBean实现executeInternal(调用所需实现的方法)
public class QuartzJob1 extends QuartzJobBean { @Override protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException { SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println("QuartzJob1----" + sdf.format(new Date())); } }
三、创建QuartzConfig,接着定义JobDetail,JobDetail由JobBuilder构建,同时关联了任务。
@Configuration public class QuartzConfig { @Bean public JobDetail jobDetail1(){ return JobBuilder.newJob(QuartzJob1.class).storeDurably().build(); } }
四、定义定时调度Trigger,简单实现类SimpleScheduleBuilder用于构建Scheduler,TriggerBuilder则用于构建Trigger,
@Configuration public class QuartzConfig { @Bean public JobDetail jobDetail1(){ return JobBuilder.newJob(QuartzJob1.class).storeDurably().build(); } @Bean public Trigger trigger1(){ SimpleScheduleBuilder scheduleBuilder = SimpleScheduleBuilder.simpleSchedule() .withIntervalInSeconds(1) //每一秒执行一次 .repeatForever(); //永久重复,一直执行下去 return TriggerBuilder.newTrigger() .forJob(jobDetail1()) .withSchedule(scheduleBuilder) .build(); } }
浙公网安备 33010602011771号