Quatz JobListener和TriggerListener
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的更多相关文章
- 几种任务调度的 Java 实现方法与比较
综观目前的 Web 应用,多数应用都具备任务调度的功能.本文由浅入深介绍了几种任务调度的 Java 实现方法,包括 Timer,Scheduler, Quartz 以及 JCron Tab,并对其优缺 ...
- 几种任务调度的 Java 实现方法与比较Timer,ScheduledExecutor,Quartz,JCronTab
几种任务调度的 Java 实现方法与比较 综观目前的 Web 应用,多数应用都具备任务调度的功能.本文由浅入深介绍了几种任务调度的 Java 实现方法,包括 Timer,Scheduler, Quar ...
- 几种任务调度的 Java 实现方法与比较--转载
前言 任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务.本文由浅入深介绍四种任务调度的 Java 实现: Timer ScheduledExecutor 开源工具包 Quartz ...
- 推荐几种Java任务调度的实现
几种任务调度的 Java 实现方法与比较--转载 原文:http://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/ 写了一天的作业调度,这 ...
- 几种任务调度的 Java 实现方法与比较 mark
任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务.本文由浅入深介绍四种任务调度的 Java 实现: Timer ScheduledExecutor 开源工具包 Quartz 开源工 ...
- 任务调度TimerTask&Quartz的 Java 实现方法与比较
文章引自--https://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/ 前言 任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自 ...
- 聊Java中的任务调度的实现方法及比较
前言 任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务.本文由浅入深介绍四种任务调度的 Java 实现: Timer ScheduledExecutor 开源工具包 Quartz ...
- 几种任务调度的 Java 实现方法与比较(定时任务)(转)
转自:http://blog.csdn.net/javafay/article/details/8031269 综观目前的 Web 应用,多数应用都具备任务调度的功能.本文由浅入深介绍了几种任务调度的 ...
- Quartz集群
为什么选择Quartz: 1)资历够老,创立于1998年,比struts1还早,但是一直在更新(27 April 2012: Quartz 2.1.5 Released),文档齐全. 2)完全由Jav ...
随机推荐
- python—数据类型和变量
在python中,能够直接处理的数据类型和变量有整数.浮点数.字符串.布尔值.空值.变量. 一.整数 1.python可处理任意大小的整数,包括负整数,在程序中的表示方法与在数学中的方法一样.例如:0 ...
- vue微博回调空页面
1.vue微博回调空页面 注:微博回调空页面为:http://127.0.0.1:8888/oauth/callback/ 1.1 页面路径 components\oauth.vue <temp ...
- 手撕HashMap
前言: 平时工作的时候,用的最多的就是ArrayList和HashMap了,今天看了遍HashMap的源码,决定自己手写一遍HashMap. 一.创建MyHashMap接口 我们首先创建一 ...
- oracle 导入导出表,库
Exp/Imp是oracle备份数据的两个命令行工具 1.本地数据库导入导出 1.导出 (运行---cmd中操作) exp 用户名/密码@数据库实例名file=本地存放路径 eg: exp jnjp/ ...
- 【佛山市选2013】JZOJ2020年8月7日T4 排列
[佛山市选2013]JZOJ2020年8月7日T4 排列 题目 描述 一个关于n个元素的排列是指一个从{1, 2, -, n}到{1, 2, -, n}的一一映射的函数.这个排列p的秩是指最小的k,使 ...
- Spring Boot 使用 XXL-JOB
一.配置部署调度中心 1.1 下载源码 https://github.com/xuxueli/xxl-job 1.2 数据库初始化 执行 /xxl-job/doc/db/tables_xxl_job. ...
- 解决右键notepad++打开时提示, ShellExecute failed (2): Is this command correct?
错误如下图: 解决方法: 右键notepad++.exe; 去掉管理员方式
- Spark流式状态管理(updateStateByKey、mapWithState等)
通常使用Spark的流式框架如Spark Streaming,做无状态的流式计算是非常方便的,仅需处理每个批次时间间隔内的数据即可,不需要关注之前的数据,这是建立在业务需求对批次之间的数据没有联系的基 ...
- Codeforces Edu Round 47 A-E
A. Game Shopping 按照题意模拟既可. #include <iostream> #include <cstdio> using namespace std; co ...
- 【译】为什么Rust中的BTreeMap没有with_capacity()方法?
原文标题:Why doesn't Rust's BTreeMap have a with_capacity() method? 原文链接:https://www.nicolas-hahn.com/20 ...