注意spring applicationContext.xml的语法是2.0的.所以要注意文件头部.
改为:
然后在配置文件中定义一个schedule的Factory
这个schedule工厂bean会随着容器启动而启动.然后定义一个定时执行的规则.
p:startDelay 指定容器启动后多少毫秒开始执行定时方法.
p:repeatInterval 指定隔多少毫秒再一次的执行定时方法.
改为:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
然后在配置文件中定义一个schedule的Factory
<bean id="scheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="triggerJobTester" />
</list>
</property>
</bean>
这个schedule工厂bean会随着容器启动而启动.然后定义一个定时执行的规则.
<!-- 描述了一个定时处理的机制 -->
<bean id="triggerJobTester"
class="org.springframework.scheduling.quartz.SimpleTriggerBean"
p:jobDetail-ref="jobDetailTesterTarget" p:startDelay="1000"
p:repeatInterval="2000">
</bean>
<!-- 指定定时器要定时执行的类和方法 -->
<bean id="jobDetailTesterTarget"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
p:targetObject-ref="scheduleTarget" p:targetMethod="testMethod">
</bean>
<!-- 在sping当中注册定时器的FactoryBean -->
<bean id="scheduleTarget"
class="com.lsk.spring.schedule.ScheduleTarget" />
p:startDelay 指定容器启动后多少毫秒开始执行定时方法.
p:repeatInterval 指定隔多少毫秒再一次的执行定时方法.