在你使用调度器之前,它需要被实例化。为此,请使用SchedulerFactory。Quartz的一些用户可能会在JNDI存储中保存一个工厂的实例,其他人可能会找到它使用或直接使用工厂实例(例如下面的示例)。
一旦调度器被实例化,它就可以启动,进入待机模式或关机。请注意,一旦调度程序关闭,它在重新实例之前是不能重新启动的。在调度器启动前,触发器不会触发(任务也不会执行),也不会在调度程序处于暂停状态时触发。
以下是一段代码,它实例化并启动一个调度程序,并安排一个作业执行:
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课中,我们将简要介绍作业和触发器以及Quartz的API,以便您可以更全面地了解这个示例。