Spring定时任务配置

来源:互联网 发布:微信收费数据共享 编辑:程序博客网 时间:2024/04/28 17:56

l Pom文件加入依赖

            <!--quartz-->

            <dependency>

                <groupId>org.quartz-scheduler</groupId>

                <artifactId>quartz</artifactId>

                <version>1.8.5</version>

           </dependency>

l Spring文件配置

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

 

    <!-- 要调用的工作类 -->

    <bean id="quartzJob" class="com.school.biz.service.impl.TestServiceImpl">

    </bean>

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

    <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">

        <!-- 调用的类 -->

        <property name="targetObject">

            <ref bean="quartzJob"/>

        </property>

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

        <property name="targetMethod">

            <value>process</value>

        </property>

    </bean>

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

    <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">

        <property name="jobDetail">

            <ref bean="jobtask"/>

        </property>

        <!-- cron表达式每天上午十每一分钟触发 -->

        <property name="cronExpression">

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

        </property>

    </bean>

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

        <property name="triggers">

            <list>

                <ref local="doTime"/>

            </list>

        </property>

    </bean>

</beans>

l 调度类定义

public class TestServiceImpl  {

    @Async

    public void process() {

          System.out.println("******************************");

    }

}

0 0