Spring Quartz定时器

Spring Quartz定时器
分类: Java 2011-07-12 14:49 1085人阅读 评论(0) 收藏 举报
quartzspringencodingbean任务调度cron

需要jar:

quartz-all-1.5.2.jar  下载http://download.csdn.net/source/1026766
spring.jar  下载http://download.csdn.net/source/1041819

http://blog.csdn.net/cezorzhao/article/details/8128968
http://blog.csdn.net/will_awoke/article/details/6274148

QuartzJob.java
[java] view plaincopy

    package Test; 
     
    public class QuartzJob { 
         
        public void work() { 
            System.out.println("Quartz的任务调度!"); 
            //LoadXML.loadXml(); Do something 
        } 
    } 



applicationContext_quartz.xml
[html] view plaincopy

    <?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:jee="http://www.springframework.org/schema/jee" 
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd 
    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd"> 
     
        <!-- 要调用的工作类 --> 
        <bean id="quartzJob" class="org.huajun.utils.QuartzJob"></bean> 
        <!-- 定义调用对象和调用对象的方法 --> 
        <bean id="jobtask" 
            class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
            <!-- 调用的类 --> 
            <property name="targetObject"> 
                <ref bean="quartzJob" /> 
            </property> 
            <!-- 调用类中的方法 --> 
            <property name="targetMethod"> 
                <value>work</value> 
            </property> 
        </bean> 
        <!-- 定义触发时间 --> 
        <bean id="doTime" 
            class="org.springframework.scheduling.quartz.CronTriggerBean"> 
            <property name="jobDetail"> 
                <ref bean="jobtask" /> 
            </property> 
            <!-- cron表达式 --> 
            <property name="cronExpression"> 
                <!-- 第 10、30 、50 分钟各执行一次--> 
                <value>0 10/20 * * * ?</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> 


关于cron表达式请参见我的上一篇文章:http://blog.csdn.net/liuyuhua0066/article/details/6274148



web.xml
[html] view plaincopy

    <?xml version="1.0" encoding="UTF-8"?> 
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
     
        <!-- 加载spring --> 
        <context-param> 
            <param-name>contextConfigLocation</param-name> 
            <param-value> 
                /WEB-INF/classes/applicationContext*.xml 
            </param-value> 
        </context-param> 
        <servlet> 
            <servlet-name>context</servlet-name> 
            <servlet-class> 
                org.springframework.web.context.ContextLoaderServlet 
            </servlet-class> 
            <load-on-startup>1</load-on-startup> 
        </servlet> 
     
        <welcome-file-list> 
            <welcome-file>index.html</welcome-file> 
        </welcome-file-list> 
    </web-app> 

你可能感兴趣的:(spring)