# 使用Quartz

在使用调度程序之前,它需要被实例化。为此,您可以使用SchedulerFactory。Quartz的一些用户可能会将工厂的实例保存在JNDI存储中,其他用户可能会发现直接实例化和使用工厂实例同样容易(或更容易)(例如下面的示例)。

一旦调度程序被实例化,它就可以启动、置于待机模式以及关闭。请注意,一旦计划程序关闭,就不能在不重新实例化的情况下重新启动它。在调度程序启动之前,或者在它处于暂停状态时,触发器不会启动(作业不会执行)。

下面是一段简短的代码,它实例化并启动调度器,并安排作业执行:

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

  Scheduler sched = schedFact.getScheduler();

  sched.start();

  //定义作业并将它绑定到我们的HelloJob.class这个类中
  JobDetail job = newJob(HelloJob.class)
      .withIdentity("myJob", "group1")
      .build();

  //设置作业每40秒运行一次
  Trigger trigger = newTrigger()
      .withIdentity("myTrigger", "group1")
      .startNow()
      .withSchedule(simpleSchedule()
          .withIntervalInSeconds(40)
          .repeatForever())
      .build();

  //通知Quartz使用我们的触发器安排该工作
  sched.scheduleJob(job, trigger);

如您所见,使用Quartz非常简单。在第2课中,我们将快速概述作业和触发器以及Quartz的API,以便您能够更全面地理解这个示例。


微信公众号

QQ交流群
原创网站开发,偏差难以避免。

如若发现错误,诚心感谢反馈。

愿你倾心相念,愿你学有所成。

愿你朝华相顾,愿你前程似锦。