Quartz定时器框架

2020-01-03  本文已影响0人  林太浪先生

Quartz 三要素:

Scheduler:任务调度器,所有的任务都是从这里开始。

Trigger:触发器,定义任务执行的方式、间隔。

JobDetail & Job : 定义任务具体执行的逻辑。

由于所学尚浅,先说一个简单的实现方式。

写一个配置类

@Configuration

public class QuartzConfig {

@Bean

    public JobDetailtestQuartz1() {

//Application这个类是继承了QuartzJobBean的Job实现类,是实现了protected void executeInternal(JobExecutionContext context)方法

return JobBuilder.newJob(Application.class).withIdentity("Application").storeDurably().build();

    }

//CronScheduleBuilder.cronSchedule("0 42 10 * * ? *")

    @Bean

    public TriggertestQuartzTrigger1() {

//3秒执行一次

        SimpleScheduleBuilder scheduleBuilder = SimpleScheduleBuilder.simpleSchedule()

.withIntervalInSeconds(61)//between查找数据时防止重复,手动往后移动一秒

//                .withRepeatCount(2);//重复执行的次数

                .repeatForever();

        return TriggerBuilder.newTrigger().forJob(testQuartz1())

.withIdentity("Application")

.withSchedule(scheduleBuilder)//  CronScheduleBuilder.cronSchedule("0 09 14 * * ? *")  */5 * * * *

                .build();

    }

}

利用bean在Spring中的生命周期,项目启动,便开始运行定时器。

上一篇下一篇

猜你喜欢

热点阅读