spring_quartz.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 要调用的工作类 -->
<bean id="infoCollect" class="com.ffcs.listener.InfoCollect"></bean>
<bean id="myTask" class="com.ffcs.listener.MyTask"></bean>
<!-- 定义调用对象和调用对象的方法 -->
<bean id="infotask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="infoCollect"/>
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>initLogin</value>
</property>
<property name="concurrent">
<value>false</value>
</property>
</bean>
<bean id="mytask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="myTask"/>
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>run</value>
</property>
<property name="concurrent">
<value>false</value>
</property>
</bean>
<!-- 触发器:定义触发规则 -->
<bean id="info-trigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail">
<ref local="infotask" />
</property>
<property name="startDelay">
<!-- 服务启动一分钟后执行 1*1000*60-->
<value>30000</value>
</property>
<property name="repeatInterval">
<!-- 每隔6秒执行一次 6*1000 -->
<value>1800000</value>
</property>
</bean>
<bean id="mytask-trigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail">
<ref local="mytask" />
</property>
<property name="startDelay">
<!-- 服务启动一分钟后执行 1*1000*60-->
<value>60000</value>
</property>
<property name="repeatInterval">
<!-- 每隔6秒执行一次 6*1000 -->
<value>1800000</value>
</property>
</bean>
<!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->
<bean id="startQuertz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="info-trigger"/>
<ref bean="mytask-trigger"/>
</list>
</property>
</bean>
</beans>
web.xml文件:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml,classpath:spring-hibernate.xml,classpath:spring-quartz.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
jar包:
见附件