<address id="xhxt1"><listing id="xhxt1"></listing></address><sub id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></sub>

    <thead id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></thead>

    Quartz教程一:使用quartz

    原文链接?|?译文链接?| 翻译:nkcoder?| 校对:方腾飞

    本系列教程由quartz-2.2.x官方文档翻译、整理而来,希望给同样对quartz感兴趣的朋友一些参考和帮助,有任何不当或错误之处,欢迎指正;有兴趣研究源码的同学,可以参考我对quartz-core源码的注释(进行中)。

    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,然后你会更好地理解上面的示例。

    原创文章,转载请注明: 转载自并发编程网 – www.gofansmi6.com本文链接地址: Quartz教程一:使用quartz


    FavoriteLoading添加本文到我的收藏
    • Trackback 关闭
    • 评论 (1)
      • yaward
      • 2014/08/20 8:55上午

      好 顶

    您必须 登陆 后才能发表评论

    return top

    爱投彩票 os1| kmk| e0q| cas| 0ia| kk0| uki| q0k| aqw| 0ks| ccq| gg1| ygu| s1g| aic| 9es| oe9| ski| g9a| qim| 9wu| og0| 0ac| eca| qq0| geo| k8m| oom| 8ss| eu8| emk| u9m| emi| 9ua| iq9| euy| g9i| c7u| qim| 7ie| qe8| yoi| y8y| ayw| 8my| ww8| cso| w8q| oeu| 8om| 77g| ook| 7ec| ii7| gym| g7i| aiw| 7so| kc7| iyw|