首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

quartz部署配置

2012-11-05 
quartz调度配置bean idincrementalJob p:targetObject-refincrementalService p:targetMethodjob

quartz调度配置

<bean id="incrementalJob" p:targetObject-ref="incrementalService" p:targetMethod="job" p:concurrent="false" />       <bean id="checkImagesTrigger" p:jobDetail-ref="incrementalJob" p:cronExpression="0 0 22 * * ?" />   <bean id="scheduler" />   </list>  </property>  <property name="schedulerContextAsMap">  <map>  <entry key="timeout" value="30" />   </map>  </property>  <property name="quartzProperties">  <props>  <prop key="org.quartz.threadPool.class">org.quartz.simpl.SimpleThreadPool</prop>   <prop key="org.quartz.threadPool.threadCount">10</prop>   </props>  </property>  </bean>



动态修改调度时间

WebApplicationContext webApplicationContext = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());/** * 进行调度时间重算 */CronTriggerBean ct = (CronTriggerBean) webApplicationContext.getBean("myTrigger");CronTriggerBean ct2 = (CronTriggerBean) webApplicationContext.getBean("myStopTrigger");Scheduler scheduler = (Scheduler) webApplicationContext.getBean("scheduler");ct.setCronExpression("5 * * * * ?");ct2.setCronExpression("35 * * * * ?");scheduler.rescheduleJob(ct.getName(), ct.getGroup(), ct);scheduler.rescheduleJob(ct2.getName(), ct2.getGroup(), ct2);


初始化时读取其他地方的调度时间

public class MyCronTriggerBean extends CronTriggerBean {public void initStartCronExpression() {try {setCronExpression("15 * * * * ?");} catch (ParseException e) {e.printStackTrace();}}public void initStopCronExpression() {try {setCronExpression("15 * * * * ?");} catch (ParseException e) {e.printStackTrace();}}}


修改原XML配置文件即可

<bean id="myTrigger"  p:jobDetail-ref="myJob" p:cronExpression="0 * * * * ?" init-method="initStartCronExpression"  /> 


热点排行