`
no_bao
  • 浏览: 316772 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Quartz使用指南(一)-----Quartz简介

阅读更多

 

   <!--[endif]-->什么是Quartz

Quartz是一个作业调度系统(a job scheduling system),Quartz不但可以集成到其他的软件系统中,而且也可以独立运行的;在本文中“job scheduler”的意思是:一个负责在约定的时间到达时执行(或通知)其他软件控件的方法。

Quartz是非常灵活的,为了实现我们的需求Quartz包含了许多可以独立或被集成使用的典型范例,同时使我们编写项目中的代码也觉得很简单自然(natural)。

Quartz是很轻量级的,只需要简单的安装或配置就可以在项目中使用;如果只是相对简单的使用实际上可以直接地使用(out-of-the-box)。

Quartz具有容错性,能够持久化所调度的作业,即在系统重启后也可以继续执行原先未完成的作业。

虽然Quartz对给定的计划可以简单地运行一些系统的处理是很适用的,但只有当我们学习如何使用Quartz去驱动我们的应用业务处理流程时,才能真正的认识到Quartz的全部潜能。

      <!--[endif]-->什么是Quartz-从软件控件的角度

Quartz是以.jar文件的形式发布的,Quartz java库中包含了Quartz所有的核心功能,该功能的主要接口(API)是Scheduler接口,Scheduler接口提供了一些简单的操作,如:schedulering/unscheduling jobsstarting/stopping/pausing the scheduler

如果我们要调度自定义的作业,该作业必须实现Job接口,Job接口包含了一个必须实现的方法:execute(…);如果我们需要实现当到达被调度的时间能够得到通知,我们必须实现TriggerListenerJobListener接口。

Quartz主要程序不但能够作为独立的应用(带有RMI 接口)运行,也可以作为J2EE组件资源在J2EE应用服务器运行。

 <!--[endif]-->使用Quartz

使用Scheduler前必须实例化Scheduler,需要由SchedulerFactory类来创建SchedulerFactory的实例可以通过在JNDI存储中的Factory的序列化的方式来获取,实例化Factory后直接使用该实例也是很容易的,如下面的例子。

Scheduler被实例化后就可以启动、暂停或关闭,但是Scheduler一旦关闭就不能再次启动该Scheduler,只有必须再次实例化后才可以;Trigger只有与之对应的Scheduler启动后才能触发与之相关的Job,否则一直处于暂停状态。

下面是一个实例化、启动Scheduler和调度执行作业的例子:

//创建一个SchedulerFactory类的实例
SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
//创建一个Scheduler类的实例
  Scheduler sched = schedFact.getScheduler();
//启动上面创建的Scheduler
  sched.start();
//创建一个JobDetail
  JobDetail jobDetail = new JobDetail("myJob",
                                      sched.DEFAULT_GROUP,
                                      DumbJob.class);
//创建一个SimpleTrigger
  SimpleTrigger trigger = new SimpleTrigger("myTrigger",
                                            sched.DEFAULT_GROUP,
                                            new Date(),
                                            null,
                                            0,
                                            0L);
//JobDetailSimpleTrigger所创建的各自实例关联到一个Scheduler
  sched.scheduleJob(jobDetail, trigger);
<!--EndFragment-->

 



 

 

分享到:
评论

相关推荐

    quartz-2.4.0-SNAPSHOT-distribution.tar.gz

    解压"quartz-2.4.0-SNAPSHOT-distribution.tar.gz"后,我们主要会看到一个名为"quartz-2.4.0-SNAPSHOT"的目录,其中包含了Quartz框架的所有组件和相关文档。这个目录下通常会有以下内容: 1. **JAR文件**:核心库...

    quartz-2.2.3-distribution.tar.gz

    总之,"quartz-2.2.3-distribution.tar.gz"是一个包含Quartz库完整组件的压缩包,提供了强大的定时任务管理功能,是Java开发者实现定时任务的首选工具。通过学习和使用Quartz,你可以构建出更加智能和自动化的Java...

    quartz使用指南

    quartz使用指南,quartz使用指南,quartz使用指南

    Quartz-JOB-Framework 中文版和QUartz开发指南 .zip

    在给定的压缩包文件中,我们有两个重要的资源:一个是"Quartz Job Scheduling Framework 中文版 V1.0.0 (1).chm",另一个是"Quartz开发指南.pdf"。 "Quartz Job Scheduling Framework 中文版 V1.0.0 (1).chm"是...

    quartz指南,Quartz 工程

    Quartz开发指南.pdf 2:Quartz从入门到进阶.pdf 3:QuartzBeginnerExample一个附带的工程例子 4:quartz-1.6.1.zip Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE...

    quartz-2.1.7

    这个"quartz-2.1.7"版本是Quartz库的一个重要发布,专注于提供可靠的定时任务管理和执行。在这个版本中,Quartz进行了多方面的优化和改进,以提高稳定性和性能。 Quartz的核心功能在于其强大的调度能力。它支持CRON...

    quartz-2.1.6.zip

    quartz-all-2.1.6.jar 包含了Quartz的所有功能,包括核心库和所有依赖的模块,这使得开发者在一个单一的JAR文件中就可以使用Quartz的所有特性。 quartz-2.1.6.jar 是Quartz的核心库,包含用于创建、管理和执行作业...

    quartz-1.6.6 教程,代码

    总结,Quartz-1.6.6 教程涵盖了从基础概念到实际开发的全面内容,无论你是初学者还是有经验的开发者,都能从中受益。通过学习和实践,你可以熟练掌握如何在 Java 应用中实现高效、可靠的定时任务管理。

    Quartz开发指南-基于1.4.3版本 (1).pdf

    Quartz是一款强大的、开源的Java定时任务框架,用于在应用程序中调度任务。它以其灵活性、稳定性和可扩展性而受到广泛赞誉。以下是Quartz的主要特点和功能的详细说明: 1. **灵活的调度**:Quartz允许开发者创建...

    Quartz开发指南.pdf

    #### 一、Quartz 功能简介 Quartz 是一款开源的任务调度框架,广泛应用于 Java 应用程序中。它的主要功能包括但不限于: 1. **可嵌入性**:Quartz 可以轻松地嵌入到任何独立的应用程序中运行,无需额外的依赖或...

    Quartz.NET-2.1.2官方包

    - **readme.txt**:通常包含快速入门指南和重要注意事项,帮助用户了解如何开始使用Quartz.NET。 3. **库和文档**: - **lib**:这个目录可能包含了Quartz.NET的库文件,如DLLs,供开发者在项目中引用。 - **doc...

    quartz-1.6.5使用手册

    在开始使用 Quartz 之前,需要首先下载 Quartz 1.6.5 的压缩包 quartz-1.6.5.zip,然后解压缩并将其添加到 Java 项目中。注意需要将 Quartz 的 JAR 包添加到类路径中,以便正确地使用 Quartz 的功能。 示例程序 ...

    Quartz使用指南

    Quartz 是一个强大的开源作业调度框架,用于在 Java 应用程序中安排任务执行。它提供了高度可定制的特性,可以满足各种复杂的定时任务需求。Quartz 的核心组件包括 Scheduler、Job 和 Trigger。 1. **Scheduler**:...

    quartz-2.2.3-官方文档数据及PDM表结构.zip

    综上所述,"quartz-2.2.3-官方文档数据及PDM表结构.zip"文件包含的内容将帮助开发者深入理解Quartz的各个方面,从基本概念到高级特性,为实际项目中的任务调度提供全面指导。通过学习和应用这些知识,可以提高应用...

    quartz-1.6.4.源码

    `readme.txt` 文件通常提供了快速入门指南、注意事项或者项目简介,对于初学者了解 Quartz 和如何开始使用源码非常有帮助。 通过对这些文件的分析,我们可以了解到 Quartz 1.6.4 版本的核心组成部分以及如何根据...

    quartz-1.6.0任务调试

    在"quartz-1.6.0任务调试"中,我们需要理解Quartz的基本概念、配置以及如何进行任务的调试。 首先,Quartz的核心是Job和Trigger。Job是实际需要执行的任务,而Trigger则是触发Job执行的时间规则。在Quartz 1.6.0...

    Quartz 2D编程指南

    《Quartz 2D编程指南》一文详细介绍了Quartz 2D这一核心绘图引擎在iOS和其他Apple平台上的应用及特性。Quartz 2D是Apple提供的底层绘图API,用于创建高质量的二维图形,它不仅适用于iOS,还广泛应用于macOS、watchOS...

    Quartz 开发指南(附源码)

    本指南将深入探讨 Quartz 的核心概念、配置与使用方法,并提供源码分析,帮助开发者更高效地利用这一强大工具。 1. **Quartz 基本概念** - **Job**:Job 是实际要执行的任务,是一个实现了 `org.quartz.Job` 接口...

    Quartz开发指南

    Quartz开发指南,有初级到高级的一个开发教程。比较完善的一个资料。

    Quartz 开发指南 中文版

    #### 一、Quartz 功能简介 - **特性概述**: - **独立运行**:Quartz 可以嵌入到任何独立的应用中运行。 - **应用服务器集成**:Quartz 可以在应用服务器或者 Servlet 容器中实例化,并且能够参与 XA 事务。 - *...

Global site tag (gtag.js) - Google Analytics