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. poj3311(状压dp)

    题目连接:http://poj.org/problem?id=3311 题意:一个送披萨的,每次送外卖不超过10个地方,给你这些地方之间的时间,求送完外卖回到店里的总时间最小. 分析:跑一遍Floyd ...

  2. 网格最短路径算法(Dijkstra & Fast Marching)(转)

    Dijkstra算法是计算图中节点之间最短路径的经典算法,网上关于Dijkstra算法原理介绍比较多,这里不再多讲.值得一提的是,当图中节点之间的权重都为1时,Dijkstra算法就变化为一般意义上的 ...

  3. OpenStack镜像管理3

    第三部分 OpenStack镜像管理 一.简介 很多源都有为OpenStack已经编译好的各种镜像了,您可以直接下载并通过使用这些镜像来熟悉OpenStack. 不过如果是为生产环境进行部署的话,您一 ...

  4. java List<Map> 排序问题

    Collections.sort(order_from_list, new Comparator<Map<Object, Object>>() { public int com ...

  5. Android:主题(Theme)

    1.主题和样式的区别主要区别在 主题不能作用于单个View组建,主题应该对整个应用中的所有Activity起作用或者对指定的Activity起作用. 主题定义的格式应该是改变窗口的外观格式,例如窗口变 ...

  6. CF 439D(251D题)Devu and his Brother

    Devu and his Brother time limit per test 1 second memory limit per test 256 megabytes input standard ...

  7. POJ 2536 Gopher II(二分图的最大匹配)

    题目链接:http://poj.org/problem?id=2536 题意:已知有n仅仅老鼠的坐标,m个洞的坐标,老鼠的移动速度为V,S秒以后有一仅仅老鹰要吃老鼠,问有多少个老鼠被吃. 非常明晰,二 ...

  8. hadoop学习;自己定义Input/OutputFormat;类引用mapreduce.mapper;三种模式

    hadoop切割与读取输入文件的方式被定义在InputFormat接口的一个实现中.TextInputFormat是默认的实现,当你想要一次获取一行内容作为输入数据时又没有确定的键.从TextInpu ...

  9. 每日回顾Shell —cat,tail,head

    Shell中常常会用到cat命令.可是总是不是特别清楚: cat命令的用途是连接文件或标准输入并打印. 这个命令经常使用来显示文件内容.或者将几个文件连接起来显示.或者从标准输入读取内容并显示,它常与 ...

  10. 并查集专辑 (poj1182食物链,hdu3038, poj1733, poj1984, zoj3261)

    并查集专题训练地址,注册登录了才能看到题目 并查集是一个树形的数据结构,  可以用来处理集合的问题, 也可以用来维护动态连通性,或者元素之间关系的传递(关系必须具有传递性才能有并查集来维护,因为并查集 ...