- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Quartz在Sring中动态设置cronExpression
Quartz在Spring中动态设置cronExpression (spring设置动态定时任务)
2007-07-25 13:52
什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定)。
这样总不能修改配置文件每定制个定时任务就增加一个trigger吧,即便允许客户修改配置文件,但总需要重新启动web服务啊,研究了下Quartz在Spring中的动态定时,发现bean id=cronTrigger class=org.springframework.scheduling.quartz.CronTriggerBean
????????? property name=jobDetail ref=schedulerJobDetail/
????????? property name=cronExpression
????????????? value0/10 * * * * ?/value
????????? /property
?????中cronExpression是关键,如果可以动态设置cronExpression的值,也就说如果我们可以直接调用CronTriggerBean中设置cronExpression的方法,就可以顺利解决问题了。
熟悉1的朋友可以跳过不看,下面2、3是动态定时任务的具体实现。
1. Quartz在Spring中的简单配置
Spring配置文件:
???? bean id=schedulerJobDetail class=org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean
???????? property name=targetObject ref=scheduleInfoAction/
???????? property name=targetMethod value=simpleJobTest/
???????? property name=concurrent value=false/
???? /bean
???? bean id=cronTrigger class=org.springframework.scheduling.quartz.CronTriggerBean
????????? property name=jobDetail ref=schedulerJobDetail/
????????? property name=cronExpression
????????????? value0/10 * * * * ?/value
????????? /property
????? /bean
???? bean id=schedulerFactory class=org.springframework.scheduling.quartz.SchedulerFactoryBean
???????? property name=triggers
???????????? list
???????????????? ref local=cronTrigger/
???????????? /list
???????? /property
/bean
在上面的配置中设定了
① targetMethod: 指定需要定时执行scheduleInfoAction中的simpleJobTest()方法
② concurrent:对于相同的JobDetail,当指定多个Trigger时, 很可能第一个job完成之前,第二个job就开始了。指定concurrent设为false,多个job不会并发运行,第二个job将不会在第一个job完成之前开始。
③ cronExpression:0/10 * * * * ?表示每10秒执行一次,具体可参考附表。
④ triggers:通过再添加其他的ref元素可在list中放置多个触发器。
scheduleInfoAction中的simpleJobTest()方法
注意:此方法没有参数,如果scheduleInfoAction有两个方法simpleJobTest()和simpleJobTest(String argument),则spring只会去执行无参的simpleJobTest().
public void simpleJobTest() {
???????? log.warn(uh oh, Job is scheduled ! + Success...);
???? }
2.Quartz在Spring中动态设置cronTri
您可能关注的文档
- Protel电路计课程设计报告.doc
- Protous仿交通灯文档.doc
- PLC饮料罐装生流水线1.doc
- PSpice仿真程11--乙类互补对称电路输出波形的交越失真及消除.doc
- PS2接口键盘的入识别电路设计报告.doc
- ps快捷键大全 icrosoft Word 文档.doc
- ps教程入门—Potoshop制作逼真的蓝天白云.doc
- PTET-PSC京发展大厦楼宇自动化系统设计.doc
- PT100温度传器的接线方法.doc
- PT100温度检系统思路及软硬件.doc
- Quartz结合PRING多任务定时调用.doc
- Quiz (Uit 4 Book II).doc
- Quotes aout Socrates and Confucius.doc
- QXTT TS-Y-0024红外测油仪作业指导书.doc
- Quartz在Sring中动态设置cronExpression (spring设置动态定时任务).doc
- QY20B起重机压系统及回转机构结构设计.doc
- QZZN-201年上海市公务员录用考试申论试卷(A类).doc
- Q/CDT 10 001-2005 中国大唐集团电力设备交接和预防性试验规程.doc
- Rc串并联选频网频率特性的测试.doc
- R180柴油机曲工艺设计及夹具设计任务书.doc
原创力文档


文档评论(0)