定时器quartz

马勒格彼得 2014-12-15

导入jar包 quartz-all-1.6.5.jar

在spring配置文件配置

<?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="brandService" class="com.javagroup.pengbw.service.brand.BrandServiceImpl"></bean> -->
        <!-- 定义调用对象和调用对象的方法 -->
        <!-- 把时间触发器和任务类粘合在一起 : 我的工作类是 targetObject: quartzJob(id:com.bd.quartz.job.QuartzJob) -->
        <!--  我工作的方法是:targetMethod: work (targetObject:quartzJob:QuartzJob.work)-->
        <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            <!-- 调用的类 -->
            <property name="targetObject">
                <ref bean="brandService"/>
            </property>
            <!-- 调用类中的方法 -->
            <property name="targetMethod">
                <value>brandAllList</value>
            </property>
        </bean>
        <!-- 定义触发时间 :定时器 doTime -->
        <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
            <property name="jobDetail">
                <ref bean="jobtask"/>
            </property>
            <!-- cron表达式 -->
            <property name="cronExpression">
                <value>0/10 * * * * ?</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="doTime"/>
                </list>
            </property>
        </bean>
    
</beans>

   

    <?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="brandService" class="com.javagroup.pengbw.service.brand.BrandServiceImpl"></bean> --> 

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

        <!-- 把时间触发器和任务类粘合在一起 : 我的工作类是 targetObject: quartzJob(id:com.bd.quartz.job.QuartzJob) -->

        <!--  我工作的方法是:targetMethod: work (targetObject:quartzJob:QuartzJob.work)-->

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

            <!-- 调用的类 -->

            <property name="targetObject">

                <ref bean="brandService"/>

            </property>

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

            <property name="targetMethod">

                <value>brandAllList</value>

            </property>

        </bean>

        <!-- 定义触发时间 :定时器 doTime -->

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

            <property name="jobDetail">

                <ref bean="jobtask"/>

            </property>

            <!-- cron表达式 -->

            <property name="cronExpression">

                <value>0/10 * * * * ?</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="doTime"/>

                </list>

            </property>

        </bean>

    

</beans>

相关推荐