`
kobe学java
  • 浏览: 258435 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

spring结合quartz的执行多任务的实现

 
阅读更多

Xml代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
  5.     <!--定义多个任务信息 -->  
  6.        
  7.     <!--1、 配置文件中添加业务类,该类为调用的工作类 -->  
  8.     <bean id="businessWork" class="com.morningstar.quartz.BusinessWork" />    
  9.       
  10.     <!-- 2、定义任务,在spring文件中配置代理类 ,定义调用对象和调用对象的方法-->   
  11.     <bean id="reportTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">    
  12.         <!-- 调用的类 -->          
  13.         <property name="targetObject" ref="businessWork"/>  
  14.          <!-- 调用类中的方法 -->  
  15.         <property name="targetMethod" value="generateReport"/>   
  16.         <!-- false,证明不执行并发任务 -->  
  17.         <property name="concurrent" value="false"/>     
  18.     </bean>   
  19.     <bean id="emailTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">    
  20.         <!-- 调用的类 -->          
  21.         <property name="targetObject" ref="businessWork"/>  
  22.          <!-- 调用类中的方法 -->  
  23.         <property name="targetMethod" value="sendEmail"/>   
  24.         <!-- false,证明不执行并发任务 -->  
  25.         <property name="concurrent" value="false"/>     
  26.     </bean>   
  27.       
  28.     <!-- 3、配置触发器,定义触发时间,可以根据不同的时间对同一个任务定义多个触发器,下面是每隔5秒调用一个方法配置-->  
  29.     <!-- cron表达式 -->  
  30.     <bean id="reportCronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">  
  31.         <property name="jobDetail" ref="reportTask"/>  
  32.         <property name="cronExpression" value="10,15,20,25,30,35,40,45,50,55 * * * * ?"/>  
  33.     </bean>  
  34.     <bean id="emailCronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">  
  35.         <property name="jobDetail" ref="emailTask"/>  
  36.         <property name="cronExpression" value="10,15,20,25,30,35,40,45,50,55 * * * * ?"/>  
  37.     </bean>  
  38.   
  39.     <!-- 4、配置调度器 ,容器启动就会执行调度程序  -->  
  40.      <!-- 总管理类,如果lazy-init='false',则容器启动时就会执行调度程序-->    
  41.      <!-- 如果lazy-init='true',则需要实例化该bean才能执行调度程序            -->    
  42.     <bean id="schdulerFactory" lazy-init="false" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">  
  43.         <property name="triggers">  
  44.             <list>  
  45.                 <ref bean="reportCronTrigger"/>  
  46.                 <ref bean="emailCronTrigger"/>  
  47.             </list>  
  48.         </property>  
  49.     </bean>  
  50. </beans>  

 

分享到:
评论

相关推荐

    完美解决多应用服务器负载均衡环境下spring quartz同一定时任务重复执行问题

    在多应用服务器负载均衡环境下,Spring Quartz定时任务的重复执行问题是一个常见的挑战。Spring Quartz是一个强大的、开源的作业调度框架,允许开发者定义和执行复杂的定时任务。然而,当多个服务器实例并行运行时,...

    spring+quartz demo

    在这个 "spring+quartz demo" 中,我们可以学习到如何将这两个框架整合起来,实现定时任务的自动化执行。以下是一些关键知识点: 1. **Spring 配置 Quartz**: 在 Spring 的配置文件(如 `applicationContext.xml`...

    Spring+Quartz实现任务调度的小例子

    综上所述,Spring与Quartz的结合使用能够轻松实现复杂的时间驱动任务调度。通过Spring的配置和依赖注入,可以将任务的定义与执行解耦,使得任务调度更加灵活和易于维护。在这个小例子中,我们看到了如何定义一个简单...

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

    在这个项目中,结合Quartz和Spring Batch,开发者可能已经创建了一个系统,可以在集群环境中自动调度和执行Spring Batch作业。MySQL被用作Quartz的JobStore和Spring Batch的持久化存储,存储作业状态、调度信息以及...

    Spring整合quartz2.2.3总结,quartz动态定时任务,Quartz定时任务集群配置

    3. 创建Job类:定义一个实现了`org.quartz.Job`接口的类,这是Quartz执行的任务实体。Spring可以通过注解或XML配置将其声明为bean。 4. 定义Trigger:创建一个`CronTrigger`或`SimpleTrigger`来指定任务的触发规则...

    spring任务调度(Quartz )

    总的来说,Spring结合Quartz提供了一种强大的方式来管理定时任务。你可以根据需要定义多个任务和触发器,灵活地控制任务的执行时机和频率。此外,Quartz还支持暂停、恢复、删除任务以及集群部署等功能,使其成为企业...

    Spring+Quartz2

    Spring 和 Quartz2 的结合使用,使得我们可以轻松地在 Spring 应用中创建和管理复杂的定时任务,而且通过 Cron 表达式可以方便地调整任务的执行周期。这种灵活性和强大功能使得它们在企业级应用中得到广泛应用。 在...

    转:spring多个定时任务quartz配置

    本文将深入探讨如何在Spring中配置多个Quartz定时任务,并结合`quartz.properties`文件进行详细讲解。 首先,我们需要理解Quartz的基本概念。Quartz是开源的作业调度框架,允许应用程序在特定时间执行任务。它支持...

    Spring+Quartz定时任务学习文档+实例+jar包

    Spring和Quartz是Java开发中常用的两个框架,它们在企业级应用中被广泛用于实现定时任务的管理和执行。Spring提供了一个轻量级的容器来管理Bean,而Quartz则是一个强大的作业调度库,能够帮助开发者定义和执行定时...

    spring+quartz实现动态设置定时任务

    Spring和Quartz是两个强大的工具,可以协同工作来实现动态管理的定时任务。本文将深入探讨如何利用Spring框架和Quartz库创建和管理这些任务。 **Spring框架** 是一个广泛应用的Java企业级开发框架,它提供了丰富的...

    定时框架spring+quartz

    "定时框架spring+quartz"的结合,就是将Quartz的定时功能与Spring的强大集成能力完美融合,为开发者提供了一种高效、灵活的定时任务解决方案。 Spring框架提供了多种方式来管理定时任务,包括使用Spring的`@...

    spring之定时任务实现(spring-task和quartz等不同方式)

    Spring框架提供了一系列工具来支持定时任务的实现,其中包括Spring自带的`spring-task`模块和第三方的Quartz库。下面我们将详细探讨这两种方式以及如何通过注解和非注解的方式进行配置。 首先,`spring-task`是...

    spring+springMVC+mybatis+quartz动态定时任务创建

    在IT行业中,构建高效、可扩展的Web应用是至关重要的,而"spring+springMVC+mybatis+quartz动态定时任务创建"就是一个常见的技术栈,用于实现这样的目标。这个组合充分利用了各组件的优势,提供了强大的后端服务支持...

    Spring-quartz计划任务

    Spring框架与Quartz的结合使用,是Java开发中常见的定时任务解决方案。Quartz是一个开源的作业调度框架,可以用来在指定的时间执行特定的任务。而Spring框架则提供了对Quartz的集成,使得我们可以方便地在Spring应用...

    Spring+quartz相关jar包.rar

    Quartz 还具有集群功能,可以确保在多服务器环境中任务的可靠执行。 当 Spring 与 Quartz 结合使用时,Spring 可以通过其强大的容器管理和配置能力,将 Quartz 集成到应用程序中。例如,Spring 提供了 `org.spring...

    spring的quartz使用实例

    Spring整合Quartz是一款常见的任务调度解决方案,它允许开发者在应用程序中安排定时任务的执行。Quartz是一个开源的作业调度框架,而Spring通过提供一个简洁的API使得与Quartz的集成变得简单。以下是对Spring整合...

    Spring-quartz实现定时器(含代码)

    在Java开发中,Spring框架与Quartz库的结合使用是创建高效、可扩展的定时任务的常见方式。本文将深入探讨如何使用Spring整合Quartz来实现定时器,并提供相关代码示例。 首先,理解Spring框架。Spring是一个开源的...

    spring quartz通过xml配置实现定时任务demo

    在Java开发中,Spring框架与Quartz库的结合使用能够帮助开发者轻松地创建和管理定时任务。本示例将详细讲解如何通过XML配置文件来实现Spring与Quartz的集成,从而构建一个定时任务Demo。 首先,Quartz是开源的作业...

    Spring的quartz和Timer实现定时

    在Java世界中,任务调度是十分重要的,Spring框架提供了多种定时任务实现方式,其中包括Quartz和Timer。Quartz是一款开源的作业调度框架,而Timer是Java标准库中的一个类,用于执行定时任务。这两个工具都能帮助...

    spring+quartz定时任务

    【Spring + Quartz 实现...总结,Spring与Quartz的结合为开发者提供了强大的定时任务管理能力,无论是简单的单任务还是复杂的多任务场景,都能轻松应对。通过合理的配置和编程,可以构建出稳定、灵活的定时任务系统。

Global site tag (gtag.js) - Google Analytics