博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quartz
阅读量:4051 次
发布时间:2019-05-25

本文共 1915 字,大约阅读时间需要 6 分钟。

-- Start

Quartz 简介

Quartz 是一个开源的任务调度框架。

 

下载 Quartz

你可以在 Google 中搜索 Quartz,然后到官网去下载最新的 Quartz 发行包。然后将 quartz-all-xxx.jar 添加到自己的 classpath 中,另外,由于 Quartz 本身依赖于一些第三方的组件,所以我们也需要将 lib 目录下的 jar 包也添加到 classpath 中。

 

一个简单的例子 

import java.util.Date;import org.quartz.DailyTimeIntervalScheduleBuilder;import org.quartz.Job;import org.quartz.JobBuilder;import org.quartz.JobDetail;import org.quartz.JobExecutionContext;import org.quartz.JobExecutionException;import org.quartz.Scheduler;import org.quartz.SchedulerException;import org.quartz.Trigger;import org.quartz.TriggerBuilder;import org.quartz.impl.StdSchedulerFactory;public class Test {	public static void main(String[] args) throws Exception {		try {			// 获得调度器			Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();						// 启动调度器			scheduler.start();			// 定义任务			JobDetail job = JobBuilder.newJob(HelloJob.class)									.withIdentity("HelloWorldJob", "defaultGroup")									.build();			// 定义触发器			Trigger trigger = TriggerBuilder.newTrigger()										.withIdentity("HelloWorldJob", "defaultGroup")										.withSchedule(DailyTimeIntervalScheduleBuilder												.dailyTimeIntervalSchedule()												.withIntervalInSeconds(5) // 5 秒执行1次												.withRepeatCount(3)) // 重复3次,共执行4次										.startNow() // 立即启动										.build();			// 调度任务			scheduler.scheduleJob(job, trigger);			// 关闭调度器			Thread.sleep(30 * 1000); // 等待 30 秒			scheduler.shutdown();		} catch (SchedulerException se) {			se.printStackTrace();		}	}	public static class HelloJob implements Job {		public void execute(JobExecutionContext context) throws JobExecutionException {			System.out.println("Hello World! - " + new Date());		}	}}

更多例子

Quartz 的功能非常丰富,如果你熟悉 Linux 的 crontab 服务,那么你就可以利用 CronTrigger 来定义任务。如果你想让一个任务依赖与另一个任务,那么你就可以利用 JobListener 来达到目的,在 Quartz 发行包的examples文件夹下,你可以找到更多的例子。

 

-- -- 声 明:转载请注明出处

-- Last Updated on 2012-08-16
-- Written by ShangBo on 2012-07-28
-- End

 

你可能感兴趣的文章
Datawindow.net如何使用导航栏
查看>>
如何利用Datawindow.net提取Sequence数据
查看>>
小诗,纪念我即将到来的结婚两周年
查看>>
自勉文[出处不详,待考证]
查看>>
中国行政级别
查看>>
国家公务员的级别
查看>>
悼念地震死难者:使整个网页变黑白色(灰色)的特效代码
查看>>
asp.net优化完全技巧
查看>>
道 经
查看>>
德 经
查看>>
藏太甲于桐宫-从电视剧康熙王朝中学到的历史知识
查看>>
开发过程中的沟通问题
查看>>
“众”字透出的哲学
查看>>
恋爱爱情婚姻家庭与炒股票
查看>>
答非所问的古今中外名人小笑话幽默
查看>>
周易、命理、风水、姓名与命运交流周易研究心得:姓名学
查看>>
解决asp.net中tabstrip不能点击的问题
查看>>
PB中使用blob进行文件读取的性能问题
查看>>
DataWindow.net中如何实现鼠标划过时变颜色
查看>>
Datawindow.net中设置字符串的显示,超过长度部分显示为。。。
查看>>