quartz详解3-Trigger

1. Trigger

trigger通过TriggerBuilder实现。(注意Builder的链式)

Trigger对象用来告诉调度程序作业什么时候触发。
即触发执行job。

Trigger触发器:执行任务的规则;比如每天,每小时等。
一般情况使用SimpleTrigger,和CronTrigger,这个触发器实现了Trigger接口。

1.对于复杂的时间表达式来说,比如每个月15日上午几点几分,使用CronTrigger
2.对于简单的时间来说,比如每天执行几次,使用SimpleTrigger

/ 1 / 触发器通用属性

1.JobKey
2.StartTime
3.EndTime

  • JobKey 触发器触发时,该指定的Job实例运行
  • StartTime 触发器首次首发时间(java.util.Date
  • EndTime 不再被触发的时间(java.util.Date
/*
Scheduler
3s开始执行,6s结束。每隔2s执行一次
相当于3s,5s在执行
*/
//2.定义Trigger实例,定义该job立即执行,并且每隔两秒重复执行一次,直到永远
        Date d = new Date();
        Trigger trigger = TriggerBuilder
                .newTrigger()
                .withIdentity("mytrigger","group1")
                .usingJobData("message","hello mytrigger1")
                .usingJobData("DoubleTriggerValue",5.21D)
                .startAt(new Date(d.getTime()+3000))
                .endAt(new Date(d.getTime()+6000))
                .withSchedule(
                        SimpleScheduleBuilder
                                .simpleSchedule()
                                .withIntervalInSeconds(2)
                                .repeatForever())
                .build();
/*
job
*/
//jobKey(name和group)
Trigger t = context.getTrigger();
System.out.println("trigger jonKey"+t.getJobKey().getName());

猜你喜欢

转载自blog.csdn.net/answer100answer/article/details/81291998