Quartz 教程
课程 1: 使用 Quartz
在你使用scheduler之前,它需要被实例化(谁猜到了?). 要做到这一点, 你需要使用SchedulerFactory. 有些人可能使用JNDI存储保持一个工厂实例,其他人可能发现实例化很容易,直接使用工厂实例。(例如下面的例子).
一旦scheduler实例化,它可以开始,设置为备用模式,关闭。注意一旦scheduler关闭, 他就不能重新启动并实例化。当处于暂停状态下,直到scheduler启动之前,Triggers不会触发(jobs不能执行)。
这里有一小段代码,实例并开始一个调度程序,调度一个任务执行:
SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
Scheduler sched = schedFact.getScheduler();
sched.start();
// define the job and tie it to our HelloJob class
JobDetail job = newJob(HelloJob.class)
.withIdentity("myJob", "group1")
.build();
// Trigger the job to run now, and then every 40 seconds
Trigger trigger = newTrigger()
.withIdentity("myTrigger", "group1")
.startNow()
.withSchedule(simpleSchedule()
.withIntervalInSeconds(40)
.repeatForever())
.build();
// Tell quartz to schedule the job using our trigger
sched.scheduleJob(job, trigger);
如你看到的,Quartz运行时非常简单的。在课程2中会给Jobs和Triggers一个快速介绍,以及Quartz的API你可以了解到更全面的例子。