spring集成quartz

注意:出现异常“Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super class”

Spring3.0不支持Quartz2.0,由于org.quartz.CronTrigger在2.0从class变成了一个interface造成IncompatibleClassChangeError错误:

有两种办法:

第一种减少quartz的版本号为,最好是quartz1.8

另外一种是升级spring版本号为Spring3.2以上

注:Spring3.2.4配置文件里使用CronTriggerFactoryBean来集成quartz2.x,

   使用CronTriggerBean来集成quartz1.8.x及曾经版本号.

 

下面是一个小样例demo

<!-- 启动触发器的配置開始 -->  

    <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" />  

    





package com.demo.test;





import java.util.Date;





/*

 * 使用spring+Quartz运行任务调度的详细类

 * */

public class MyJob {





    /*

     * Description:详细工作的方法,此方法仅仅是向控制台输出当前时间,

     * 输入的日志在:%tomcatRoot%\logs\tomcat7-stdout.yyyy-MM-dd.log中,

     * 当中,yyyy-MM-dd为部署的日期,经试验发现默认情况下并非每天都生成一个stdout的日志文件

     * @return 返回void

     * */

    public void work()

    {

         System.out.println("当前时间:"+new Date().toString());  

    }

}//End of MyJob

spring集成quartz的更多相关文章

  1. Spring集成Quartz定时器

    <!-- Spring集成Quartz开始 --> <bean id="startQuertz" lazy-init="false" auto ...

  2. 关于Spring集成Quartz的concurrent属性

    关于Spring集成Quartz的concurrent属性 以前经常在任务调度程序中使用Spring集成的Quartz,这种方式可以用简单的声明式配置即可实现定时任务,并结合了Spring自身的Bea ...

  3. Spring集成Quartz完成定时任务

    在JavaEE系统中,我们经常会用到定时任务,比如每天晚上凌晨之后跑批处理或者是每天某个时刻群发消息等等. 我们可以使用java.util.Timer结合java.util.TimerTask来去完成 ...

  4. Spring 集成Quartz

    在使用jdk的timer时发现无法在指定的日期进行执行任务.这便引入一个优秀的开源任务调度框架“quartz”.这里使用的是quartz-1.8.6版本.Quart的官网:http://www.qua ...

  5. (十七)Spring 集成Quartz

    在使用jdk的timer时发现无法满足这次的开发需求:即无法在指定的日期进行执行任务.这便引入一个优秀的开源任务调度框架“quartz”.这里加入的是quartz-1.8.6版本.Quart的官网:h ...

  6. Quartz学习总结(1)——Spring集成Quartz框架

    一.Quartz简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简 ...

  7. Spring集成Quartz的3种方式

    1.使用xml配置方式 Maven依赖 <properties> <!-- spring版本号 --> <spring.version>4.2.2.RELEASE& ...

  8. (2)Spring集成Quartz定时任务框架介绍和Cron表达式详解

    在JavaEE系统中,我们会经常用到定时任务,比如每天凌晨生成前天报表,每一小时生成汇总数据等等.我们可以使用java.util.Timer结合java.util.TimerTask来完成这项工作,但 ...

  9. Spring集成Quartz定时任务框架介绍和Cron表达式详解

    原文地址:http://www.cnblogs.com/obullxl/archive/2011/07/10/spring-quartz-cron-integration.html 在JavaEE系统 ...

随机推荐

  1. MVC之Session State性能

    ASP.NET MVC之Session State性能问题(七)   前言 这一节翻译一篇有关Session State性能问题的文章,非一字一句翻译. 话题 不知道我们在真实环境中是否用到了Sess ...

  2. 23、Cocos2dx 3.0游戏开发找小三之粒子系统:你那里下雪了吗?

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/30485919 春雨惊春清谷天,夏满芒夏暑相连, 秋处 ...

  3. php反射类 ReflectionClass

    什么是php反射类,顾名思义,能够理解为一个类的映射.举个样例: class fuc {        //定义一个类static function ec() {echo '我是一个类';}}$cla ...

  4. Linux lamp环境编译安装

    1.安装准备: 1)httpd-2.0.52.tar.gz 2)mysql-4.1.12.tar.gz 3)libxml2-2.6.27.tar 4)freetype-2.1.10.tar 5)gd- ...

  5. 开放源代码的微微信.NET 0.8 版公布了

    微微信.NET 0.8 版公布了     A.源代码应用范围:         未认证的和经过认证的微信订阅号.微信服务号均可使用,本源代码的每个模块都提供全然的 ASP.NET C#源代码,绝对不含 ...

  6. linux网络编程学习笔记之三 -----多进程并发服务端

    首先是fork()函数.移步APUE 8.3.  比較清晰的解释能够參考http://blog.csdn.net/lingdxuyan/article/details/4993883和http://w ...

  7. sql server 行列互转

    1 列转行 测试脚本 ),课程 ),分数 int) ) ) ) ) ) ) go 转化脚本 select 姓名 , end) 语文, end) 数学 , end) 物理 from tb group b ...

  8. async和await用法

    原文:async和await用法 要理解async和await的用法,首先要了解Task相关知识,这里不做说明,因为这不是本文的重点. 如果你已经对Task很了解,那么如何使用async和await, ...

  9. 浅谈TCP优化(转)

    很多人常常对TCP优化有一种雾里看花的感觉,实际上只要理解了TCP的运行方式就能掀开它的神秘面纱.Ilya Grigorik 在「High Performance Browser Networking ...

  10. 原创教程“ActionScript3.0游戏中的图像编程”開始连载啦!

            经过近两年的不懈努力,笔者的原创教程"ActionScript3游戏中的图像编程"最终在今日划上了完美的句号!这其中记录着笔者多年来在游戏制作,尤其是其中图像处理方 ...