为什么我在springboot2.0上面整合quartz做的定时任务,移到springboot1.5上面启动没有反应?

为什么我在springboot2.0上面整合quartz做的定时任务,移到springboot1.5上面启动没有反应?才开始使用quartz,一脸懵逼

下面是2.0上面的代码:

package com.com.dandelion.delivery.admin.job;

import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;

import java.util.Date;

public class MyCronJob extends QuartzJobBean {

    @Override
    protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        System.out.println("任务执行了" + new Date());
    }
}

上面是定时任务;

@Configuration
public class QuartzConfiguration {
    // 使用jobDetail包装job
    @Bean
    public JobDetail myCronJobDetail() {
        return JobBuilder.newJob(MyCronJob.class).withIdentity("myCronJob").storeDurably().build();
    }

    // 把jobDetail注册到Cron表达式的trigger上去
    @Bean
    public Trigger CronJobTrigger() {

        CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule("0/10 * * * * ?");

        return TriggerBuilder.newTrigger()
                .forJob(myCronJobDetail())
                .withIdentity("myCronJobTrigger")
                .withSchedule(cronScheduleBuilder)
                .build();
    }

}

2个回答

太复杂了,用Spring Boot中的@WebListener注解就行了

weixin_42767087
辉尝爪哇 这个我知道,谢谢.要求用这个,没办法
大约一年之前 回复

因为springboot2.0版本会自动注入一个scheduler调度器,你定义的bean会自动绑定到调度器上。
1.5版本没有自动注入一个调度器,你可以试试手动注入,通过factory。

weixin_42767087
辉尝爪哇 ok,谢谢!
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐