花了有一段时间“研究”spring的定时器了。由于网上的大多数方法并不是我想找到的(spring定时器有多种实现方法),所以一直没有摸索出来,今天终于搞定了(其实巨简单):
附件中关于spring定时器的代码只出现在com.july.SpringDSQ.java和july-servlet.xml文件中。其它是spring架子和另外的例子,与本例无关。
说明:此例子在MyEclipse 8.5M1做,其中用的包有(不一定有用,但是多了不影响程序):Java EE 5 Liberaries;Spring 2.5 Core Libraries;Spring 2.5 Web Libraries;Spring AOP Libraries;Spring 2.5 Persistence Core Libraries;Spring 2.5 J2EE Libraries;
另外jar包有:spring.jar;spring-webmvc-portlet.jar;spring-webmvc-struts.jar;spring-webmvc.jar;
和spring定时器直接相关的包有:quartz-all-1.6.1.jar;commons-collection.jar.
例子用的是springMVC的框架(其实根本用不着)。搭好基本的spring架子后,添加一个你想定时运行的java类:
- package com.july;
- public class SpringDSQ {
- public void run() {
- System.out.println("SpringDSQ.java is Runnig!");
- }
- }
- <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
- <property name="triggers">
- <list>
- <ref bean="correctionCronTrigger-overTimer" />
- </list>
- </property>
- </bean>
- <bean id="correctionCronTrigger-overTimer" class="org.springframework.scheduling.quartz.CronTriggerBean">
- <property name="jobDetail">
- <ref bean="correctionJobDetailFactory-overTimer"/>
- </property>
- <property name="cronExpression">
- <value>*/1 * * * * ?</value>
- </property>
- </bean>
- <bean id="correctionJobDetailFactory-overTimer" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
- <property name="targetObject">
- <ref bean="springDSQ"/>
- </property>
- <property name="targetMethod">
- <value>run</value>
- </property>
- </bean>
- <bean id="springDSQ" class="com.july.SpringDSQ"/>
附件中关于spring定时器的代码只出现在com.july.SpringDSQ.java和july-servlet.xml文件中。其它是spring架子和另外的例子,与本例无关。
说明:此例子在MyEclipse 8.5M1做,其中用的包有(不一定有用,但是多了不影响程序):Java EE 5 Liberaries;Spring 2.5 Core Libraries;Spring 2.5 Web Libraries;Spring AOP Libraries;Spring 2.5 Persistence Core Libraries;Spring 2.5 J2EE Libraries;
另外jar包有:spring.jar;spring-webmvc-portlet.jar;spring-webmvc-struts.jar;spring-webmvc.jar;
和spring定时器直接相关的包有:quartz-all-1.6.1.jar;commons-collection.jar.
转载来自:http://bepatient.iteye.com/blog/755668