Quartz2.2.1 学习笔记(一)简单例子
来源:互联网 发布:linux开发环境 编辑:程序博客网 时间:2024/05/22 15:48
J2EE中用的最多的任务调度框架应该就是Quartz了,最近比较清闲,就来详细了解一下Quartz;用这个博客来记录下学习心得,如有错误之处,还请各位大神指点。
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,以及其关联的triggerscheduler.scheduleJob(jobDetail, trigger);//启动jobscheduler.start();
运行结果,如下图:
2 0
- Quartz2.2.1 学习笔记(一)简单例子
- Quartz2.2.1 学习笔记(一)简单例子
- Quartz2.x学习笔记(一)
- Quartz2.2.1在JAVA中的简单用法(一)
- Quartz2.x学习笔记(三):Quartz2.x整合spring
- Quartz2.2.1简单使用
- Quartz2.x学习笔记(二):存储与持久化
- Quartz2.x学习笔记(四):spring注入异常解决方法
- Quartz2.2.1在JAVA中的简单用法 (二)
- WM6SDK例子学习笔记(一)
- WM6SDK例子学习笔记(一)(zhuan)
- ibatis学习笔记(一)例子
- quartz2源码分析(1)--学习笔记
- 关于Quartz2.2.1的简单使用
- MyBatis学习(一)一个简单的例子
- NGUI之学习制作简单例子(一)
- Scala学习笔记(三)Actor简单例子
- WCF学习笔记(1)最简单的例子
- Leading and Trailing
- 异步的HTTP POST与GET请求例子
- python 中 高阶函数
- LeetCode java实现ZigZagConversion
- Android ListView的Item中的子view共存、抢夺焦点问题
- Quartz2.2.1 学习笔记(一)简单例子
- Android 、资源分目录存放
- iOS多线程编程技术之NSThread、Cocoa NSOperation、GCD
- django框架使用angular js入门
- android中的文本框
- java代码的编译和执行过程
- ora-00054
- HDU2112——HDU Today(map容器+spfa)
- PAT (Basic Level) Practise (中文)1013. 数素数 (20) C语言