`
kdboy
  • 浏览: 761216 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Quartz与Spring的集成

阅读更多
Quartz与Spring的集成

1、Scheduler入口
	<bean name="quartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
           <list>
                <ref bean="cronTrigger"/>
            </list>
        </property>
    </bean>
Quartz.properties文件用于对quartz的详细设置。可选,未设置的情况下将使用jar包中的默认文件。


2、定义Trigger
    <bean id="cronTrigger" class="org.springframework.scheduling.quartz. CronTriggerBean ">
        <property name="jobDetail" ref="jobDetail"/>
        <property name="cronExpression" value="0 0/1 * *,* * ?"/>
    </bean>
除了CronTriggerBean之外,还有SimpleTriggerBean的实现方式,SimpleTrigger的实现类似jdk中的Timer,详细使用方法可以参考文章末尾的参考资料。
相比SimpleTrigger,CronTrigger便显得要强大得多。
CronTrigger表达式配置格式:
参考:http://www.blogjava.net/xmatthew/archive/2009/02/15/253864.html


3、定义Job
    <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="myJob"/>
        <property name="targetMethod" value="test"/>
    </bean>
以上定义是使用POJO类直接作为Job来进行调度。当然这里也可以直接使用实现Job接口的类作为作业处理类,这样的实现方式就需要定义JobDetailBean来实现,如:
<bean id="jobDetailBean" class="org.springframework.scheduling.quartz.JobDetailBean">
…….
</bean>
显然,POJO作为Job的实现方式耦合度要更低,使用也更为灵活。

参考资料:
用 Quartz 进行作业调度:http://www.ibm.com/developerworks/cn/java/j-quartz/
Quartz指南:http://wiki.springside.org.cn/display/springside/Quartz
分享到:
评论
1 楼 kdboy 2011-03-10  
关于CronTrigger表达式?和*的区别:

* 可以作用于任意字段,表示指定该字段为任意值。
? 只可以作用于日期和星期两个字段,表示不指定该字段的值。

日期、星期两个字段不能同时指定值(指定为*或具体数值),可以理解为这两个字段相冲突,因此如果指定了其中一个字段的值(包括指定为*),另外一个字段的值必须为 ? 。否则,会产生冲突,出现语法错误。
另外,如果同时指定日期和星期两个字段为?是允许的,相当于一个为*另一个指定为?。

相关推荐

    quartz与spring集成

    集成Quartz与Spring,可以使我们方便地在Spring管理的bean中调度任务,实现定时任务的灵活配置。 **Quartz核心概念** 1. **Job**: 代表一个可执行的任务,是实际业务逻辑的封装。 2. **Trigger**: 触发器,决定Job...

    quartz+spring集成完整开发,富含文档说明

    将Quartz与Spring集成可以充分利用Spring的IoC(Inversion of Control)和AOP(Aspect-Oriented Programming)特性,使任务调度变得更加灵活和易于管理。这样的集成可以帮助开发者在SSH(Struts、Spring、Hibernate...

    quartz整合springbatch动态集群定时实现mysql参考

    Quartz与Spring的集成使得在Spring应用中管理任务变得更加容易,可以利用Spring的依赖注入和生命周期管理。 Spring Batch是一个用于处理大量数据的批处理框架。它提供了诸如事务管理、错误处理、读写器和处理器抽象...

    Quartz和Spring整合

    这篇博客将深入探讨Quartz与Spring集成的原理、步骤以及实际应用中的常见问题。 首先,Quartz提供了强大的定时任务调度功能,包括简单任务、间隔任务、cron表达式定时任务等。它允许开发者定义Job(工作)和Trigger...

    quartz和spring-quartz

    Spring-Quartz的集成则将这些概念与Spring的IoC(Inversion of Control)容器相结合,提供了更好的依赖注入支持。以下是一些关键点: 1. **Bean集成**: Spring可以自动将Job实例作为Spring Bean管理,这样你就可以...

    定时器(quartz+spring)读取数据库配置

    在提供的压缩包文件“quartz项目资料”中,可能包含了关于如何设置Quartz与Spring集成的详细示例代码、数据库脚本、配置文件等,你可以进一步学习和参考。通过实践这些资料,你将能够更好地理解和掌握如何利用Quartz...

    spring2与quartz在Web整合

    在将 Spring 2 与 Quartz 整合到 Web 应用中时,主要涉及以下几个关键知识点: 1. **Spring 2 的核心概念**:Spring 2 提供了 IoC(Inversion of Control,控制反转)和 AOP(Aspect-Oriented Programming,面向切...

    Quartz与Spring整合练习源代码

    Quartz是一款开源的作业调度框架,它允许程序在特定时间执行特定任务,广泛应用于各种需要自动化定时任务的场景。而Spring是Java领域中一个流行的...这是一个很好的学习资源,对于理解Quartz和Spring的集成有极大帮助。

    Quartz+Spring定时触发器例子

    在本示例中,“Quartz+Spring定时触发器例子”是一个完整的项目,包含了所有必要的jar包,这意味着你可以直接运行它来学习和理解Quartz与Spring的集成。这个项目应该包含以下组件: 1. **配置文件**:可能包含一个...

    一个简单的quartz、spring集成版helloWorld示例演示

    在这个"一个简单的quartz、spring集成版helloWorld示例演示"中,我们将探讨如何将这两个框架结合使用,实现一个基础的定时任务。 首先,Quartz的集成通常涉及到Spring的`SchedulerFactoryBean`,这个bean负责管理和...

    spring整合quartz定时任务调度

    2. **配置Quartz**:在Spring的配置文件(如applicationContext.xml)中,声明Quartz的相关bean,包括`SchedulerFactoryBean`,它是Quartz与Spring集成的关键: ```xml &lt;bean id="schedulerFactoryBean" class="org....

    quartz与spring

    在Quartz与Spring的集成中,Quartz可以作为Spring应用中的一个组件,利用Spring的IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)特性来管理和配置任务调度。这种方式使得任务的创建...

    spring集成quartz集群配置

    首先,理解Spring集成Quartz的核心在于Spring的Job接口和Quartz的Scheduler。Spring提供了`org.springframework.scheduling.quartz.JobDetailBean`来创建Job,`org.springframework.scheduling.quartz....

    Quartz与Spring2.0整合Eclipse例程

    将Quartz与Spring结合使用,可以方便地在Spring管理的bean中定义和调度任务,实现灵活且可扩展的定时任务解决方案。 在"Quartz与Spring2.0整合Eclipse例程"中,我们将探讨如何在Eclipse开发环境中配置和运行一个...

    定时器的配置文件(两种方式:springmvc自带定时,Quartz与spring结合的定时)

    本篇文章将详细讲解两种在Spring MVC框架中实现定时任务的方法:Spring MVC自带的定时器以及Quartz与Spring的集成。 首先,我们来看看Spring MVC自带的定时任务。Spring MVC作为Spring框架的一个模块,主要处理HTTP...

    Quartz+spring定时任务demo

    在 "Quartz+spring定时任务demo" 中,我们首先需要了解如何配置和集成 Quartz 与 Spring。这通常包括以下步骤: 1. **引入依赖**:在项目中添加 Quartz 和 Spring 相关的 jar 包。描述中提到的 "1128266338845696....

    QuartZ.zipSpring+QuartZ集成 自定义注解!!!

    将Quartz与Spring集成,能够充分利用Spring的优秀特性来管理和配置定时任务,简化开发流程。 本文主要讨论的是如何在Spring应用中集成Quartz,并实现自定义注解来更便捷地定义和管理定时任务。首先,我们需要在项目...

    spring2.0 Quartz 执行每天定时任务 建议用quartz-all-1.8.4.jar更稳定,兼容性更好

    在使用Quartz与Spring集成时,首先需要在项目中引入Quartz的jar包,如标题中提到的`quartz-all-1.8.4.jar`,这个版本被认为是较稳定且具有较好的兼容性的。引入后,你需要配置Spring的ApplicationContext,声明一个...

    spring 集成quartz 用数据库实现quartz的集群

    【Spring集成Quartz定时任务与数据库实现集群详解】 在企业级应用中,定时任务的管理是必不可少的一部分,Spring框架提供了与Quartz的集成,使得我们可以方便地创建和管理定时任务。Quartz是一款强大的、开放源代码...

    quartz入门例子,spring集成配置使用

    Spring集成quartz跑定时任务实例 自己写的例子并为实现job 有测试的主函数,请参考http://www.blogjava.net/baoyaer/articles/155645.html 博客信息 看此代码,项目里分为两大块,com文件夹下 为上面博客相关学习...

Global site tag (gtag.js) - Google Analytics