`
wellba
  • 浏览: 31370 次
  • 性别: Icon_minigender_1
  • 来自: 郴州
社区版块
存档分类
最新评论

Spring进行任务自动调度之quartz

阅读更多
转载:http://blog.163.com/guomaolin_gavin/blog/static/19961830720120755135680/

进行自动任务调度的方法有下面2种:------均要借助cron表达式---分别是:task和quartz

1,Quartz.这个框架是最强大的了。它是由opensymphony组织发开的。 现在最新的版本是2.1.1  下载地址www.quartz-scheduler.org

用它控制任务的自动调度有3部分!

                            1,任务(java代码 Task.java------自己命名(类名))

                            2,触发器(在什么时候进行触发 Trigger)

                            3, 调度器(scheduler    哪一个trigger调用那些任务)

实现代码是:

                            //调度器

                             scheduler s = stdSchedulerFactory.getDefaulstScheduler();

                           //任务---也称工作类

                            JodDetail  jd = new JodDetail("task","Scheduler.DEFAULT_GROUP",Task.class);

                         //触发器--值得一提的是:触发是有两种simpleTrigger和CronTrigger

                        //任务一共调度50次,每次间隔时间为200毫秒

                            Trigger t = new SimpleTrigger("task","Scheduler.DEFAULT_GROUP",50,200)

                            scheduler.schedulerJod(jd,t );

                             scheduler.start();



结合Spring:使用xml配置----------------------------这里就会出现一个问题。如果你之前使用的是annocation那么就会有点麻烦。这个时候就要task也能实现你要的功能

<!--   定义工作类和方法-->

<bean name="quartDetail" class="org.springframework.scheduling.quartz.JobDetailBean">

<property name="jobClass"  value="QuartzJobBean子类"/>

<!-- QuartzJobBean子类就是我们的工作类 。我们的工作类是要继承JobDetailBean的(必须的)-->

</bean>

<!-- 定义触发器来管理任务Bean -->
<bean id="cronTriggerPunch"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
  <!-- 使用嵌套Bean的方式来定义任务Bean -->
  <bean
  class="org.springframework.scheduling.quartz.JobDetailBean">
   <!-- 指定任务Bean的实现类           也就是工作类-->
   <property name="jobClass"
    value="org.crazyit.hrsystem.schedule.PunchJob"/>
   <!-- 为任务Bean注入属性 -->
   <property name="jobDataAsMap">
    <map>
     <entry key="empMgr" value-ref="empManager"/>
    </map>
   </property>
  </bean>
</property>
<!-- 指定Cron表达式:周一到周五7点、12点执行调度 -->
<property name="cronExpression"
  value="0 0 7,12 ? * MON-FRI"/>
</bean>
<!-- 执行实际的调度调度 -->
<bean
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
  <list>
<!-- 里面写的就是任务触发器列表-->

   <ref local="cronTriggerPunch"/>
  </list>
</property>
</bean>
分享到:
评论

相关推荐

    Spring整合任务调度框架Quartz

    在本文中,我们将详细介绍如何将 Spring 整合任务调度框架 Quartz,从而实现任务调度的自动化。 一、使用配置文件方式整合 Quartz 在 Spring 中,可以使用配置文件方式来整合 Quartz。这种方式非常简单,开发者只...

    spring任务调度(Quartz )

    在本文中,我们将深入探讨如何在Spring中集成Quartz进行任务调度,并通过一个简单的示例来理解其工作原理。 首先,要在Spring中使用Quartz,你需要将`quartz-all-1.5.2.jar`等相关的Quartz库添加到项目的类路径中。...

    spring 任务调度

    通过深入学习Spring任务调度,开发者可以有效地管理和执行各种定时任务,提升系统的自动化水平。在实际项目中,可以根据需求的复杂程度选择使用Spring Task或是集成Quartz。同时,理解源码有助于我们更高效地利用...

    Spring Quartz 任务调度实例

    Spring Quartz 是一个强大的任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。结合Spring框架,可以方便地在企业级应用中实现复杂的时间触发逻辑。本实例提供了可以直接运行的任务调度解决方案,既...

    spring+quartz任务调度代码版

    本项目"spring+quartz任务调度代码版"显然是一个结合了这两者的实践案例,旨在展示如何在Spring环境下集成和使用Quartz进行任务调度。 Spring框架是一个开源的应用框架,它提供了丰富的功能,包括依赖注入、AOP...

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

    Spring框架和Quartz是两个广泛使用的工具,它们可以协同工作以实现复杂和灵活的任务调度。本篇文章将深入探讨如何使用Spring与Quartz结合来创建一个任务调度的小例子。 首先,Spring是一个开源的Java企业级应用开发...

    Spring 中任务调度 TimeTask 与quartz简单用法

    在Spring框架中,任务调度是实现应用程序自动化执行定时任务的关键特性。这允许开发者安排任务在特定的时间间隔执行,而无需手动触发。本篇文章将详细探讨Spring中的两种常见任务调度工具:`TimerTask`和`Quartz`,...

    spring quartz 任务调度

    Spring框架作为一个全面的企业级应用开发解决方案,提供了强大的任务调度支持,而Quartz则是一个流行的开源作业调度库,能够与Spring很好地集成。现在,我们就来深入探讨"spring quartz 任务调度"这一主题。 首先,...

    spring整合quartz定时任务调度

    Spring框架作为Java领域广泛使用的轻量级框架,提供了与第三方库Quartz的整合,使得开发者能够轻松地在Spring应用中实现复杂的定时任务调度。Quartz是一款开源的作业调度框架,支持丰富的调度策略,可以满足各种定时...

    Spring Quartz 任务调度

    **Spring Quartz 任务调度** Spring Quartz 是一个基于 Java 的任务调度框架,它允许开发者定义定时任务并在应用程序中灵活地调度这些任务。这个框架是 Spring 和 Quartz Scheduler 的集成,提供了与 Spring 框架的...

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

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

    Spring实现任务调度

    本篇将深入探讨如何利用Spring进行任务调度,并结合代码演示和Quartz库的使用来丰富这一主题。 首先,Spring提供了两种主要的任务调度机制:Spring内置的`TaskExecution`和`TaskScheduling`以及与Quartz Scheduler...

    Spring quartz 定时任务调度

    Spring Quartz 是一个强大的开源任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。在Spring框架中集成Quartz,可以充分利用Spring的IoC(Inversion of Control)和AOP(Aspect Oriented Programming...

    Spring quartz任务调度

    总的来说,Spring quartz任务调度是一项重要的企业级功能,它使得开发人员能够方便地创建和管理定时任务,从而自动化执行诸如数据同步、报表生成、清理任务等重复性工作。通过合理地配置和使用,可以极大地提高应用...

    spring定时任务之Quartz

    同时,Quartz提供了丰富的API和配置选项,可以进行更复杂的任务调度,如集群、并发控制等。 需要注意的是,`ssh2Test`这个文件名可能与本主题无关,因为它是SSH2测试相关的,而SSH2通常指的是Secure Shell 2协议,...

    spring实现任务的自动调度所需的jar包

    在Spring框架中,任务调度是一项重要的功能,它允许开发者安排任务在特定的时间点或周期性地执行。Quartz是一个流行的任务调度库,被广泛...这样,就可以利用Quartz的强大功能,灵活地在Spring应用中进行任务调度了。

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

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

    spring集成quartz 任务调度

    Spring集成Quartz是一款高效的任务调度框架,用于在Java应用程序中执行计划、周期性的任务。Quartz与Spring的结合,使得我们可以充分利用Spring的依赖注入(DI)和AOP特性,简化了任务调度的复杂性。 首先,Quartz...

    spring+mybatis+quartz任务调度实例和spring+quartz任务调度实例

    里面包含了两个工程项目: 1.Java project工程(含jar包,JDK1.6)。 是spring+quartz的任务调度实例。 2.Java web工程(含jar包,JDK1.7)。 spring+mybatis+quartz任务调度实例

    quartz3种调度形式+传参.zip

    Quartz是一款强大的任务调度框架,广泛应用于Java领域,可以实现定时任务的自动化执行。它提供了丰富的API和灵活性,使得开发者可以轻松地定义和管理各种定时任务。本资料主要探讨了Quartz的三种调度形式以及在...

Global site tag (gtag.js) - Google Analytics