(翻译)Quartz官方教程——第一课:Quartz入门

在你使用调度器(scheduler)之前,需要先对其进行初始化。你可以使用一个调度器工厂(SchedulerFactory)来完成这项任务。一些Quartz的使用者可能会在JNDI中保存一个工厂(factory)的实例,但是其他使用者可能会直接使用一个工厂实例(就像下面的示例一样)并发现初始化一个调度器是如此简单。

一旦调度器初始化成功,它就可以启动、待机和关闭。注意如果调度器被关闭,它可以重新启动而不需要重新初始化。在调度器(scheduler)启动之前或者在停止状态下,触发器(Triggers)将不会被触发(及任务不会被执行)。

下面是一段简单的入门代码,它初始化并启动了一个调度器,并调度了一个任务去执行

SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();

Scheduler sched = schedFact.getScheduler();

sched.start();

// 定义一个任务并把它绑定到我们的HelloJob类
JobDetail job = JobBuilder.newJob(HelloJob.class)
      .withIdentity("myJob", "group1")
      .build();

// 让任务立即执行,然后每40秒运行一次
Trigger trigger = TriggerBuilder.newTrigger()
      .withIdentity("myTrigger", "group1")
      .startNow()
      .withSchedule(simpleSchedule()
          .withIntervalInSeconds(40)
          .repeatForever())
      .build();

// 告诉quartz使用我们定义的触发器来调度任务
sched.scheduleJob(job, trigger);

正如你看到的那样,使用Quartz是非常简单的。在课程2中,我们将简要介绍Jobs、Triggers和Quartz的API,然后你就可以完全理解这个例子了。

猜你喜欢

转载自my.oschina.net/icebergxty/blog/1797681