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你可以瞭解到更全面的例子。