spring定时任务整合了quartz插件.docx
- 文档编号:23207756
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:9
- 大小:23.35KB
spring定时任务整合了quartz插件.docx
《spring定时任务整合了quartz插件.docx》由会员分享,可在线阅读,更多相关《spring定时任务整合了quartz插件.docx(9页珍藏版)》请在冰豆网上搜索。
spring定时任务整合了quartz插件
spring定时任务(整合了quartz插件)
2009-09-2910:
08
在applicationContext-quartz.xml中进行配置就可以了:
(在spring-context-support.jar包中)
-- 要调用的工作类--> ﻫ
</property>
ﻫ</bean>
--热词榜日更新-->
<!
-- 定义调用对象和调用对象的方法-->ﻫ
--调用的类-->ﻫ <ref bean="quartzJob" />ﻫ
-- 调用类中的方法-->ﻫ <propertyname="targetMethod"> ﻫ
bean>
ﻫ
--热词榜周更新-->
--定义调用对象和调用对象的方法-->
<bean id="weekJobtask" ﻫ class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">ﻫ
--调用的类 -->ﻫ
<refbean="quartzJob"/>
ﻫ
-- 调用类中的方法-->
<value>updateWeekhotWordBaseﻫ
</bean>
<!
--热词榜月更新-->ﻫ
--定义调用对象和调用对象的方法-->
-- 调用的类-->ﻫ <propertyname="targetObject">
--调用类中的方法 -->ﻫ <propertyname="targetMethod"> ﻫ ﻫ -- 政府榜月更新--> -- 定义调用对象和调用对象的方法 --> <beanid="govJobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">ﻫ --调用的类-->ﻫ ﻫ --调用类中的方法-->ﻫ ﻫ ﻫ ﻫ <! --政策榜月更新--> --定义调用对象和调用对象的方法--> --调用的类 --> -- 调用类中的方法--> ﻫ <value>updatePolﻫ property> ﻫ ﻫ --学术榜月更新--> --定义调用对象和调用对象的方法 --> -- 调用的类 --> --调用类中的方法--> ﻫ <propertyname="targetMethod">ﻫ <value>updateSciﻫ </property> ﻫ ﻫ ﻫ --总榜每日更新--> --定义调用对象和调用对象的方法 --> class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> --调用的类--> property>ﻫ <! --调用类中的方法--> <propertyname="targetMethod">ﻫ ﻫ --定义每日触发时间日榜,总榜更新时间每日凌晨1点-->ﻫ class="org.springframework.scheduling.quartz.CronTriggerBean">ﻫ <propertyname="jobDetail">ﻫ <refbean="dayJobtask" /> ﻫ <! --cron表达式-->ﻫ **</value>ﻫ </property>ﻫ ﻫ <beanid="doTimeTotal" class="org.springframework.scheduling.quartz.CronTriggerBean"> <refbean="totalJobtask"/>ﻫ </property>ﻫ --cron表达式 --> **</value> ﻫ property>ﻫ bean>ﻫ ﻫ <! --定义每周触发时间周榜更新时间每周1凌晨2点--> class="org.springframework.scheduling.quartz.CronTriggerBean"> <propertyname="jobDetail">ﻫ ﻫ </property> --cron表达式--> ﻫ <propertyname="cronExpression"> * MONvalue>ﻫ </property> ﻫ ﻫ <! --定义每月触发时间月榜更新时间每月1日凌晨3点-->ﻫ <beanid="doTimeMonth"ﻫ class="org.springframework.scheduling.quartz.CronTriggerBean">ﻫ <propertyname="jobDetail"> </property> --cron表达式-->ﻫ </value> </bean>ﻫ -- 定义政府,政策,学术每月更新时间每月1日凌晨3: 30--> <propertyname="jobDetail"> ﻫ <refbean="govJobtask"/> </property> --cron表达式 --> <propertyname="cronExpression"> ﻫ <value>0303 1*? </value> ﻫ bean> property> -- cron表达式 -->ﻫ class="org.springframework.scheduling.quartz.CronTriggerBean">ﻫ <refbean="sciJobtask"/> ﻫ <! --cron表达式--> ﻫ value>ﻫ </property> ﻫ bean> --总管理类如果将lazy-init='false'那么容器启动就会执行调度程序 --> <refbean="doTimeMonth"/> <refbean="doSci"/> ﻫ ﻫ </bean>ﻫ Spring定时器,主要有两种实现方式,包括JavaTimer定时和Quartz定时器! 1.JavaTimer定时 首先继承java.util.TimerTask类实现run方法 package com.land; importjava.util.Date; importjava.util.TimerTask; ﻫpublicclassTimerTestextends TimerTask { @Override public voidrun(){ //TODOAuto-generatedmethodstubﻫ System.out.println("TimerTest"+(newDate()).toString()); } } Spring配置 </bean> <beanid="TimerTestTask" class="org.springframework.scheduling.timer.ScheduledTimerTask">ﻫ --wait10seconds beforestartingrepeatedexecution -->ﻫ <property name="delay" value="10000"/><! --启动后的延迟时间--> <! --间隔时间-->ﻫ <propertyname="timerTask"ref="TimerTest"/> </bean> ﻫ<beanid="timerFactory"class="org.springframework.scheduling.timer.TimerFactoryBean"> <propertyname="scheduledTimerTasks">ﻫ <list> --seetheexample above -->ﻫ <refbean="TimerTestTask" />ﻫ </list> </bean> 2.Quartz定时器 首先继承QuartzJobBean类实现executeInternal方法ﻫpublicclass SchedulerTest extends QuartzJobBean{ @Override protectedvoidexecuteInternal(JobExecutionContextarg0)throwsJobExecutionException{ﻫ //TODOAuto-generatedmethod stub //System.out.println("-----------");ﻫ System.out.println("1111111"+(new Date()).toString());ﻫ } } ------------------------------------------- publicclassSchedulerTest2 extendsQuartzJobBean{ @Overrideﻫ protected voidexecuteInternal(JobExecutionContextarg0)throwsJobExecutionException{ﻫ //TODOAuto-generatedmethodstubﻫ //System.out.println("-----------");ﻫ System.out.println("22222222"+(newDate()).toString()); } } Spring配置 <beanid="SchedulerTask"class="org.springframework.scheduling.quartz.JobDetailBean">ﻫ </bean> </property>ﻫ </bean> </property>ﻫ </bean> ﻫ <value>1000<! --延迟时间--> </property>ﻫ <property name="repeatInterval">ﻫ <value>20000</value><! --间隔时间--> </property>ﻫ </property> 3.其他说明 JavaTimer定时有一种配置启动的方org.springframework.scheduling.timer.ScheduledTimerTask, Quartz定时器有两种配置启动的方式: org.springframework.scheduling.quartz.SimpleTriggerBean,org.springframework.scheduling.quartz.CronTriggerBean。 org.springframework.scheduling.quartz.CronTriggerBean Linux系统的计划任务通常有cron来承担。 从左到右 字段 允许值 允许的特殊字符 秒 0-59 ,-* / ﻫ <ref bean="doTimeDay" />ﻫ <refbean="doTimeWeek"/>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- spring 定时 任务 整合 quartz 插件