Quartz2.2.1 学习笔记(一)简单例子
2015-07-24 00:00
267 查看
J2EE中用的最多的任务调度框架应该就是Quartz了,最近比较清闲,就来详细了解一下Quartz;用这个博客来记录下学习心得,如有错误之处,还请各位大神指点。
Job,具体的任务接口;通过实现它,来让任务调度执行具体的任务。
JobDetail ,用来定义Job的实例。
Trigger ,触发器用来定义给定的Job应该如何执行。
JobBuilder ,用来定义/构建Jobdetail实例。
TriggerBuilder ,用来定义/构建Trigger实例。
创建一个Job,名为HelloJob:
实现Job接口中的execute方法,这个方法中是我们需要任务调度执行的具体内容,这里我们只简单打印“hello job”字符串和当前时间。
然后我们就可以编写一个测试类,来执行Job。
首先,创建JobDetail:
然后,创建Trigger:
最后,获取Scheduler,并启动任务:
运行结果,如下图:
版权声明:本文为博主原创文章,未经博主允许不得转载。
1.关键接口
Scheduler,任务调度的API;它可以用来启动或者终止任务等。Job,具体的任务接口;通过实现它,来让任务调度执行具体的任务。
JobDetail ,用来定义Job的实例。
Trigger ,触发器用来定义给定的Job应该如何执行。
JobBuilder ,用来定义/构建Jobdetail实例。
TriggerBuilder ,用来定义/构建Trigger实例。
2.简单例子
下面是一个简单的例子,创建一个简单的任务调度。创建一个Job,名为HelloJob:
public class HelloJob implements Job{ @Override public void execute(JobExecutionContext arg0) throws JobExecutionException { System.out.println("hello job, "+ DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss")); } }
实现Job接口中的execute方法,这个方法中是我们需要任务调度执行的具体内容,这里我们只简单打印“hello job”字符串和当前时间。
然后我们就可以编写一个测试类,来执行Job。
首先,创建JobDetail:
JobDetail jobDetail = JobBuilder.newJob(HelloJob.class) .withIdentity("helloJob", "group1") .build();
然后,创建Trigger:
Trigger trigger = TriggerBuilder.newTrigger() .withIdentity("myTrigger","group1") .startNow() .withSchedule( SimpleScheduleBuilder.simpleSchedule() //每5s运行一次 .withIntervalInSeconds(5) //重复运行3次 .withRepeatCount(3) ).build();
最后,获取Scheduler,并启动任务:
SchedulerFactory schedulerFactory = new StdSchedulerFactory(); Scheduler scheduler = schedulerFactory.getScheduler(); //添加job,以及其关联的trigger scheduler.scheduleJob(jobDetail, trigger); //启动job scheduler.start();
运行结果,如下图:
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关文章推荐
- Extjs4.0 最新最全视频教程
- OpenERP 的XML-RPC的实例+many2many,one2many,many2one...
- CSS3属性教程与案例分享
- jquery教程靠边站,一分钱不花让你免费学会jquery
- autoit入门教程小结第1/5页
- 用Photoshop 制作草地效果简明教程
- 比较完整简洁的Flash处理XML文档数据教程 上篇第1/3页
- VBS基础编程教程 (第1篇)
- SQLite教程(十一):临时文件
- VBS基础编程教程 (第3篇)
- VBS教程:运算符-运算符(+)
- 交换机升级排障实例
- PostgreSQL教程(十):性能提升技巧
- PostgreSQL教程(二):模式Schema详解
- PostgreSQL教程(十三):数据库管理详解
- PostgreSQL教程(八):索引详解
- PostgreSQL教程(三):表的继承和分区表详解
- XML简易教程之三
- ruby 数组使用教程
- PostgreSQL教程(十九):SQL语言函数