使用Spring framework实现定时器功能

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

采用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步的内容进行调整就可以

实现。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航