Spring-3.2.4 + Quartz-2.2.0整合執行個體_定時任務調度

來源:互聯網
上載者:User
Spring3.0不支援Quartz2.0,因為org.quartz.CronTrigger在2.0從class變成了一個interface造成IncompatibleClassChangeError錯誤:
Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super class

今天剛下載了Spring3.2.4,發現這個新版本已經支援quartz2.x了.以前的Spring版本只支援Quartz-1.8.x及以前的版本,做個小執行個體分享一下.


註:Spring3.2.4設定檔中使用CronTriggerFactoryBean來整合quartz2.x,使用CronTriggerBean來整合quartz1.8.x及以前版本.


代碼結構及引用jar見下圖:

applicationContext.xml:

[html]  view plain copy <?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:p="http://www.springframework.org/schema/p"       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">          <!-- 啟動觸發器的配置開始 -->       <bean name="startQuertz" lazy-init="false" autowire="no"           class="org.springframework.scheduling.quartz.SchedulerFactoryBean">           <property name="triggers">               <list>                   <ref bean="myJobTrigger" />               </list>           </property>       </bean>       <!-- 啟動觸發器的配置結束 -->          <!-- 調度的配置開始 -->       <!--           quartz-1.8以前的配置        <bean id="myJobTrigger"           class="org.springframework.scheduling.quartz.CronTriggerBean">           <property name="jobDetail">               <ref bean="myJobDetail" />           </property>           <property name="cronExpression">               <value>0/1 * * * * ?</value>           </property>       </bean>       -->       <!-- quartz-2.x的配置 -->       <bean id="myJobTrigger"           class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">           <property name="jobDetail">               <ref bean="myJobDetail" />           </property>           <property name="cronExpression">               <value>0/1 * * * * ?</value>           </property>       </bean>       <!-- 調度的配置結束 -->          <!-- job的配置開始 -->       <bean id="myJobDetail"           class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">           <property name="targetObject">               <ref bean="myJob" />           </property>           <property name="targetMethod">               <value>work</value>           </property>       </bean>       <!-- job的配置結束 -->          <!-- 工作的bean -->       <bean id="myJob" class="com.tgb.lk.demo.quartz.MyJob" />      </beans>  

MyJob.java:

[java]  view plain copy import java.util.Date;      public class MyJob {          public void work() {           System.out.println("date:" + new Date().toString());       }   }  

web.xml:

[html]  view plain copy <?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 config start -->       <context-param>           <param-name>contextConfigLocation</param-name>           <param-value>/WEB-INF/classes/applicationContext.xml</param-value>       </context-param>          <listener>           <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>       </listener>       <!-- Spring config end -->          <welcome-file-list>           <welcome-file>index.jsp</welcome-file>       </welcome-file-list>   </web-app>  

代碼下載地址:http://download.csdn.net/detail/lk_blog/6277021

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.