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. Django写的投票系统1(转)

    当然主要是从django的帮助文档里面来的,权当是翻译吧 这个投票系统的主要功能有 1.一个前台页面,可以让用户来投票 2.一个管理员页面,可以用来添加.修改.删除投票 首页第一步要确定你已经安装了D ...

  2. Microsoft Visio 2010 怎样把直线,虚线与箭头之间切换

    我也是第一次接触这个东西,感慨是把箭头变成直线都搞了半天没搞出来,上网搜页没结果,一次偶然我会了,真是老天爷眷顾我,如今把方法给大家分享,欢迎大家不吝赐教. 直线变箭头: 刚開始是直线: 接着选中直线 ...

  3. 用XAML做网页!!—框架

    原文:用XAML做网页!!-框架 上一篇中我进行了一下效果展示和概述,此篇开始将重现我此次尝试的步骤,我想大家通过阅读这些步骤,可以了解到XAML网页排版的方法. 下面就开始编写XAML,首先来定义一 ...

  4. GString及IntelliJIdea中调试Groovy的操作步骤

    今天是学习Groovy的第一天,首先我觉得学习任何一种语言都要先弄清楚这种语言的特性,因为只有了解了特性之后学习才能达到好的效果,那么groovy的特点是什么的.我觉得groovy是一种动态语言,动态 ...

  5. 《Android内核剖析》读书笔记 第13章 View工作原理【View树遍历】

    View状态分类 在View视图中定义了多种和界面效果相关的状态,比如拥有焦点Focused.按下Pressed等,不同的状态一般会显示不同的界面效果,而且视图状态会随着用户的操作而改变,一般通过xm ...

  6. LeetCode: Unique Binary Search Trees [095]

    [题目] Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For ...

  7. PHP_保留两位小数而且四舍五入_保留两位小数而且不四舍五入

    php保留两位小数而且四舍五入 $num = 123213.666666; echo sprintf("%.2f", $num); php保留两位小数而且不四舍五入 $num =  ...

  8. Oracle 收集统计信息11g和12C在差异

    Oracle 基于事务临时表11g和12C下,能看到临时表后收集的统计数据,前者记录被清除,后者没有,这是一个很重要的不同. 关于使用企业环境12C,11g,使用暂时表会造成时快时慢.之前我有帖子ht ...

  9. Android他们控制的定义(一)

    培养自己的控制步骤定义: 1.要理解View作品  2. 分享到继承View子类 3. 要定义自己的View类添加属性  4. 绘制控件  5. 响应用户消息  6 .自己定义回调函数  一.View ...

  10. 变化App.config其中值,并保存

    using System; using System.Collections.Generic; using System.Configuration; using System.IO; using S ...