首页 > 其他 > 详细

Quatz JobListener和TriggerListener

时间:2020-12-11 14:28:13      阅读:32      评论:0      收藏:0      [点我收藏+]

myJob:triggerFired。。。
vetoJobExecution
class coder.rdf.mybatis.study.JobTest:jobToBeExecuted。。。
test quartz
class coder.rdf.mybatis.study.JobTest:jobWasExecuted。。。
myJob:triggerComplete。。。

触发器先执行,调用vetoJobExecution方法,如果方法返回ture,则不执行Job
返回false,则执行Job

SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();

JobDetail jobDetail = JobBuilder.newJob(JobTest.class).
withIdentity("myJob","testjob").build();
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("trigger3", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule("0/10 * * * * ?"))
.build();
scheduler.getListenerManager().addJobListener(new QuatzJobListenrer());
scheduler.getListenerManager().addTriggerListener(new QuatzJobListenrer());
scheduler.scheduleJob(jobDetail, trigger);
System.out.println("--------scheduler start ! ------------");
scheduler.start();
TimeUnit.MINUTES.sleep(2);
scheduler.shutdown();
System.out.println("--------scheduler shutdown ! ------------");

public class QuatzJobListenrer extends JobListenerSupport implements JobListener, TriggerListener {

@Override
public String getName() {
    return "Test JobListener";
}

@Override
public void triggerFired(Trigger trigger, JobExecutionContext context) {
    System.out.println(trigger.getJobKey().getName()+":triggerFired。。。");
}

@Override
public boolean vetoJobExecution(Trigger trigger, JobExecutionContext context) {
    System.out.println("vetoJobExecution");
    return false;
}

@Override
public void triggerMisfired(Trigger trigger) {
    System.out.println(trigger.getJobKey().getName()+"triggerMisfired。。。");
}

@Override
public void triggerComplete(Trigger trigger, JobExecutionContext context, Trigger.CompletedExecutionInstruction triggerInstructionCode) {
    System.out.println(trigger.getJobKey().getName()+":triggerComplete。。。");

}

@Override
public void jobToBeExecuted(JobExecutionContext context) {
    System.out.println(context.getJobDetail().getJobClass()+":jobToBeExecuted。。。");
}
@Override
public void jobExecutionVetoed(JobExecutionContext context) {
    System.out.println(context.getJobDetail().getJobClass() + "jobExecutionVetoed。。。");
}
@Override
public void jobWasExecuted(JobExecutionContext context, JobExecutionException jobException) {
    System.out.println(context.getJobDetail().getJobClass() + ":jobWasExecuted。。。");

}

}

Quatz JobListener和TriggerListener

原文:https://www.cnblogs.com/CoderRdf/p/14119350.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!