使用Spring framework实现定时器功能

采用Web自动加载TimerManager来管理Timer链,在Class更新服务器热加载后会发生异常。这要求对

TimerManager进行一些特殊的处理才能保证Timer链的正确性。

使用Spring framework中提供的TimerTask自动加载功能可以非常容易的实现定时器链的管理。同时,采用Spring framework的这一功能可以非常容易的对定时器进行添加、删除。

1.在Web.xml中申明

  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/schedulingContext-timer.xml</param-value>
  </context-param>
  <servlet>
    <servlet-name>context</servlet-name>
    <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
    <load-on-startup>3</load-on-startup>
  </servlet>

2.在schedulingContext-timer.xml描述用户的定时器

 <bean id="timer" class="org.springframework.scheduling.timer.TimerFactoryBean">
  <property name="scheduledTimerTasks">
   <list>
    <ref local="JorwangScheduledTimerTask1"/>
   </list>
  </property>
 </bean>

 <bean id="JorTimeTask1" class="workflow.common.MyTimer">
 </bean>
 <bean id="JorwangScheduledTimerTask1"   class="org.springframework.scheduling.timer.ScheduledTimerTask">
  <property name="timerTask"><ref bean="JorTimeTask1"/></property>
  <property name="delay"><value>10000</value></property>
  <property name="period"><value>86400000</value></property>
 </bean>

3.编写workflow.common.MyTimer定时器

这样就轻松完成了定时器的功能。如果需要修改、增加、删除定时器,只需要对2、3步的内容进行调整就可以

实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值