java quartz 传递参数_Java定时任务调度工具详解之Quartz篇

Scheduler:通过工厂模式创建的,如图,SchedulerFactory的实现类有两个,常用的是StdSchedulerFactory。

4a86e91237f467030bb0e28bb6fd0fcc.png

Job和Trigger的关系:如图。

47893edc67c49a02bb325b6298ec42d2.png

Scheduler的创建方式:如图。

fa3774bdaad2ad314f52131dbd2ab1aa.png

接下来主要讲解StdSchedulerFactory,因为DirectSchedulerFactory的参数都需要代码去实现的(开发中提倡声明式配置,就是在配置文件中进行配置,例如xml中等)。

StdSchedulerFactory:使用一组参数(Java.util.Properties)来创建和初始化Quartz调度器,其中这组参数就包括了指定后台运行Quartz的线程数。还有Job的信息存储在何种介质中(例如内存中、或者数数据库中),配置参数一般存储在quartz.properties中。StdSchedulerFactory通过getScheduler犯法来创建和初始化调度器对象。

9d163285d011de765d837e76fc76992c.png

Scheduler的主要函数:

Date scheduleJob(JobDetail jobDetail,Trigger trigger):绑定JobDetail和Trigger,将其注入到Scheduler,其中返回的Date表示即将执行的最近一次的执行时间,如图。

8eaf2e277d7d5f77cdd2c39c92ee3767.png

void start():它是用来启动Scheduler调度器,指定定时任务的。

void standby():Scheduler暂时挂起,暂停工作。停止之后可以再通过start方法重新启动。

void shutdown():关闭调度器,不可以重新启动了。

注意:shutdown支持传入一个布尔类型的参数,如果传入的为true,就表示等待所有正在执行j的job执行完毕后,再进行关闭scheduler。如果传入的false,那么就和无参数一样,表示直接关闭scheduler。

dca2ed17f3e604e1e2c3a3087318a09f.png

举例:shutdown(true),如图。

f97fdec213529c7285cac7e53b9783ca.png

e910de7992392ebf39b28bb106146578.png

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值