官网地址

程序猿升级课

热爱开源,喜欢摸索


SpringBoot+Quartz整合定时任务(1.8.6)

概念:

  • 当处理一些,简单的,固定时间,重复次数的任务可以使用简单触发器
  • 当处理一些,负载的任务,可以使用Cron表达式(触发器的name字段一定要写)

1.一个jobDetail就是一个业务。也就是准备定时的任务

 @Bean
    public JobDetail jobDetail(){
        JobDetail jobDetail=new JobDetail("scheduledTasks2s", Scheduler.DEFAULT_GROUP, ScheduledTasks2.class);
        return jobDetail;
    }

2.SimpleTrigger简单触发器,设置多久触发一次,触发次数

     @Bean
    public SimpleTrigger simpleTrigger(){
        SimpleTrigger simpleTrigger=new SimpleTrigger("simpleTrigger",Scheduler.DEFAULT_GROUP);
        simpleTrigger.setStartTime(new Date(System.currentTimeMillis()));
        simpleTrigger.setRepeatInterval(5000);//没
        simpleTrigger.setRepeatCount(10);//执行10次
        return simpleTrigger;
    }

2.1可以使用cron表达式的触发器

/**
 * 触发器名字一定要写
 * @return
 * @throws Exception
 */
@Bean
public CronTrigger cronTrigger() throws Exception {
    CronTrigger cronTrigger = new CronTrigger();
    cronTrigger.setName("MyCronTrigger");
    cronTrigger.setCronExpression("0/1 * * * * ? ");
    return cronTrigger;
}

3.Scheduler调度器,这个调度器由SchedulerFactory工厂获得设置定时任务和触 发器

@Bean
    public Scheduler scheduler(JobDetail jobDetail,SimpleTrigger simpleTrigger)throws Exception{
        SchedulerFactory schedulerFactory=new StdSchedulerFactory();
        Scheduler scheduler=schedulerFactory.getScheduler();
        scheduler.scheduleJob(jobDetail, simpleTrigger);
        return scheduler;
    }
posted @ 2017-02-08 11:42  chinesszz  阅读(87)  评论(0编辑  收藏  举报
ヾ(≧O≦)〃嗷~