博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
quartz使用(整合spring)
阅读量:5878 次
发布时间:2019-06-19

本文共 1592 字,大约阅读时间需要 5 分钟。

quartz与spring整合后,还是需要Scheduler实例、JobDetail实例、Trigger实例,只不过是用FactoryBean的方式创建了。

在spring-context-support-xxx.jar包中有对应的FactoryBean类,Scheduler实例对应org.springframework.scheduling.quartz.SchedulerFactoryBeanJobDetail实例对应两个FactoryBean类,org.springframework.scheduling.quartz.JobDetailFactoryBean和org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanTrigger实例对应两个FactoryBean类,org.springframework.scheduling.quartz.SimpleTriggerFactoryBean和org.springframework.scheduling.quartz.CronTriggerFactoryBean,SimpleTriggerFactoryBean对应生成SimpleTrigger实例,CronTriggerFactoryBean对应生成CronTrigger实例。

用MethodInvokingJobDetailFactoryBean创建的JobDetail实例不能序列化,不适于任务调度信息持久化的情况,所以说如果要持久化任务调度信息的话,只能用JobDetailFactoryBean来创建JobDetail实例。

这几项对应的spring配置文件内容如下:

JobDetailFactoryBean的jobClass属性值就是我们自己开发的任务类,需要继承org.quartz.Job接口或者继承org.springframework.scheduling.quartz.QuartzJobBean。

SchedulerFactoryBean的configLocation属性值就是上一篇《quartz入门》中介绍的quartz.properties配置文件,放在classpath下。

SchedulerFactoryBean的overwriteExistingJobs属性默认为false,当trigger由每5秒执行一次变为每30秒执行一次时,任务调度是不会更改的,只有设为true之后才会更改。

SchedulerFactoryBean的dataSource属性不能设置,如果设置的话,用来持久化任务调度信息的类就变成了org.springframework.scheduling.quartz.LocalDataSourceJobStore,quartz.properties文件中org.quartz.jobStore.class配置项不再起作用。

转载于:https://www.cnblogs.com/koushr/p/5873467.html

你可能感兴趣的文章
WPF 实现窗体拖动
查看>>
来自维基百科程序员Brandon Harris
查看>>
NULL不是数值
查看>>
CentOS 5 全功能WWW服务器搭建全教程
查看>>
30个优秀的后台管理界面设计案例分享
查看>>
scala111
查看>>
模块化服务规范——OSGI
查看>>
劣质代码评析——猜数字问题(上)
查看>>
纸上谈兵: 栈 (stack)
查看>>
Windows phone8 基础篇(三) 常用控件开发
查看>>
Oracle学习笔记之五,Oracle 11g的PL/SQL入门
查看>>
大叔手记(3):Windows Silverlight/Phone7/Mango开发学习系列教程
查看>>
Btrace使用教程
查看>>
IE6 IE7 不支持 JSON
查看>>
多功能表单填报系统V1.2.1-适用于在线报名系统、调查、数据收集等
查看>>
HotSpot VM GC 的种类
查看>>
Android ViewPager滑动背景渐变
查看>>
HDU 2072 单词数
查看>>
考拉消息中心消息盒子处理重构(策略模式)
查看>>
so easy 前端实现多语言
查看>>