spring quratz 定时器配置

<?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:tx="http://www.springframework.org/schema/tx"

xsi:schemaLocation="http://www.springframework.org/schema/beans

         http://www.springframework.org/schema/beans/spring-beans-4.1.xsd

         http://www.springframework.org/schema/context

         http://www.springframework.org/schema/context/spring-context-4.1.xsd">

 

<!-- 定时器要调用的类-->

<bean id="reportQuartzJob" class="com.cooker.RunningDayReportJob" />

 

<!-- 定义调用对象和调用对象的方法 -->

<bean id="jobTask"

class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">

<!-- 调用的类 -->

<property name="targetObject" ref="reportQuartzJob" />

<!-- 调用类中的方法 -->

<property name="targetMethod" value="work"/>

</bean>

 

<!-- 定义触发时间 -->

<bean id="trunckTime" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">

<property name="jobDetail" ref="jobTask" />

<property name="cronExpression">

<!-- 每日凌晨1点统计应用运行情况-->

<value>0 0 1 * * ?</value> 

 

<!-- 任务调度2分钟执行一次  测试 -->

<!--  <value>0 */1 * * * ?</value> -->

 

</property>

</bean>

 

<!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->

<bean id="startQuertz" lazy-init="true" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">

<property name="triggers">

<list>

<ref bean="trunckTime" />

</list>

</property>

</bean>

 

 

</beans>

 

 

在 web.xml 加入 配置文件

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>

classpath:config/spring/spring-application.xml,

classpath:config/spring/spring-support.xml,

classpath:config/spring/spring-mybatis.xml,

classpath:config/spring/spring-cache.xml,

classpath:config/spring/spring-quartz.xml 

</param-value>

</context-param>

猜你喜欢

转载自2274851504.iteye.com/blog/2419506