Quartz教程一--使用Quartz

早过忘川 提交于 2019-11-30 12:12:01

Scheduler在使用之前需要实例化。一般通过SchedulerFactory来创建一个实例。有些用户将factory的实例保存在JNDI中,但直接初始化,然后使用该实例也许更简单(见下面的示例)。

scheduler实例化后,可以启动(start)、暂停(stand-by)、停止(shutdown)。注意:scheduler被停止后,除非重新实例化,否则不能重新启动;只有当scheduler启动后,即使处于暂停状态也不行,trigger才会被触发(job才会被执行)。

下面的代码片段,实例化并启动一个scheduler,调度执行一个job:

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的使用并不难。教程二会简要地介绍job和trigger,以及quartz的API,然后你会更好地理解上面的示例。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!