zoukankan      html  css  js  c++  java
  • Quartz学习 之 关键接口

     Quartz API 的关键接口有:

    • Scheduler : 和调度器交互的主要API。  
    • Job :开发者时间该接口,将业务代码放进去,然后交给调度器执行。
    • JobDetail :用来定义Job的实例。
    • Trigger :一个组件,用来调度 一个给定的要被执行的Job。
    • JobBuilder : 用来创建 JobDetail 实例,从某一种成都上说也就是 Job的实例。
    • TriggerBuilder :用来创建 Trigger 的实例。

      调度器的生命周期: SchedulerFactory  创建调度器,生命周期开始,shutdown() 方法调用之后,生命周期结束。

      Scheduler 的实例一旦创建,就可以 Add、Remove Jobs 和 Triggers,还可以查询调度器中所有的Job和trigger, 还可以执行其他的有关调度的工作(譬如,让某一个触发器暂停)。调度器不会启动触发器,直到start()方法被调用。

      Quartz 提供了一些建造者,定义了一些 领域特定语言。下面是一些例子:

    // define the job and tie it to our HelloJob class 
      JobDetail job = newJob(HelloJob.class) 
          .withIdentity("myJob", "group1") // name "myJob", group "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);
    

      不同的 ScheduleBuilder  类可以 创建不同类型的 调度。

      DateBuilder 类提供了很多的方法,很容易就能构造特殊事件的 java.util.Date 对象。

  • 相关阅读:
    Codeforces 691A Fashion in Berland
    HDU 5741 Helter Skelter
    HDU 5735 Born Slippy
    HDU 5739 Fantasia
    HDU 5738 Eureka
    HDU 5734 Acperience
    HDU 5742 It's All In The Mind
    POJ Euro Efficiency 1252
    AtCoder Beginner Contest 067 C
    AtCoder Beginner Contest 067 D
  • 原文地址:https://www.cnblogs.com/aDiot/p/5333140.html
Copyright © 2011-2022 走看看