<?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:context="http://www.springframework.org/schema/context"
xmlns:mvc='http://www.springframework.org/schema/mvc'
xsi:schemaLocation="http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
">
<!--
每隔12小时执行一次 0 0 0/12 * * ? *
每隔01分钟执行一次 0 0/1 * * * ? *
每10秒触发执行一次 0/10 * * * * ?
-->
<bean id="importColumnJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="类名" />
<property name="targetMethod" value="handleColumn" />
<property name="concurrent" value="false" />
</bean>
<bean id="importColumnTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="importColumnJob" />
<property name="cronExpression">
<value>0/5 * * * * ? *</value>
</property>
</bean>
<bean id="importVideoJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="类名" />
<property name="targetMethod" value="handleVideo" />
<property name="concurrent" value="false" />
</bean>
<bean id="importVideoTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="importVideoJob" />
<property name="cronExpression">
<value>0/10 * * * * ? *</value>
</property>
</bean>
<bean id="importCoverJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="类名" />
<property name="targetMethod" value="handleCover" />
<property name="concurrent" value="false" />
</bean>
<bean id="importCoverTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="importCoverJob" />
<property name="cronExpression">
<value>0/10 * * * * ? *</value>
</property>
</bean>
<!-- ######## 总调配中心 ########## -->
<bean id="schedulerFactory"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="autoStartup" value="true" />
<property name="quartzProperties">
<props>
<prop key="org.quartz.scheduler.instanceName">Validata_Worker</prop>
<prop key="org.quartz.threadPool.threadCount">5</prop>
<prop key="org.quartz.scheduler.skipUpdateCheck">true</prop>
</props>
</property>
<property name="triggers">
<list>
<ref bean="importVideoTrigger" />
<!-- <ref bean="importColumnTrigger" /> -->
<ref bean="importCoverTrigger" />
</list>
</property>
</bean>
</beans>
第二部分:实现Spring3+Quartz2的定时任务。
首先创建一个基本的Java类来做为Job任务类,代码如下:
接下来是在Spring配置文件中配置JobDetail、Trigger、SchedulerFactoryBean