码迷,mamicode.com
首页 > 其他好文 > 详细

Quartz调度器学习(2)

时间:2015-10-27 13:03:22      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

http://quartz-scheduler.org/documentation/quartz-2.x/cookbook/   定义了诸多如何使用Quartz的示例

1,初始化Scheduler

初始化Scheduler,一种是先创建一个StdSchedulerFactory,然后再从StdSchedulerFactory.getScheduler(),这里获得的Scheduler采用的是默认的配置。另一种是从配置文件中初始化Scheduler。

StdSchedulerFactory sf = new StdSchedulerFactory();
sf.initialize(schedulerProperties);//从配置文件中读取Scheduler的配置
Scheduler scheduler = sf.getScheduler();

 

2,Scheduler可以处于 standby 模式,即“待机”模式,处于该模式下的Scheduler不能 触发Job执行条件,不能执行作业。

scheduler.standby();//使调度器进入“待机”模式

从“待机”模式恢复出来,执行: scheduler.start();

 

3,关闭Scheduler

调用shutdown()方法关闭Scheduler,一旦调用了shutdown方法之后,调度器就不能再重新启动了,因为它的资源以及相关的线程都已经被回收了。

关闭调度器时,会面临两种情况。一种是等待作业执行完成时,关闭调度器;另一种是立即关闭调度器。通过shutdown方法接收的参数来判断是哪种情况。

scheduler.shutdown(true);//等待作业执行完成时才关闭调度器
scheduler.shutdown();//shutdown scheduler directly
//or
scheduler.shutdown(false);//shutdown scheduler directly

 

4,Quartz可以与Web整合。在Servlet容器中可以初始化Scheduler时,需要在web.xml 文件中进行相应的配置。参考:ServletInitScheduler

 

5,在非集群模式下使用多个Scheduler(每个Scheduler下可以配置多个work thread(在quartz.properties文件中配置))

对于Quartz而言,每个Scheduler必须有一个唯一的名字,即不同的Scheduler名字必须不同。而quartz.properties文件为调度器指定了Scheduler的名字。这意味着:需要多个quartz.properties文件,每个文件给一个Scheduler进行相应的属性配置。

 

6,保存Job,供以后使用。

// Add the the job to the scheduler‘s store
sched.addJob(job, false);

 

7,如何更新一个已经存在的Job

 

8,如何更新触发器

 

9,列出调度器调度的所有的作业

 

10.......一些非常常用的使用Quartz的小示例。。。。。

Quartz调度器学习(2)

标签:

原文地址:http://www.cnblogs.com/hapjin/p/4913759.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!