1、Quartz 简介
a、Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。
b、主页:http://www.quartz-scheduler.org/
现在写个简单的例子
package com.quartz;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class QuartzTest implements Job {
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
// TODO Auto-generated method stub
System.out.println("Quartz is Test");
}
}
package com.quartz;
import java.util.Date;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleTrigger;
import org.quartz.impl.StdSchedulerFactory;
public class QuartzTest1 {
public void run() throws SchedulerException {
SchedulerFactory schedulerFactory=new StdSchedulerFactory();
Scheduler scheduler=schedulerFactory.getScheduler();
JobDetail jobDetail=new JobDetail("job1", "group1", QuartzTest.class);
SimpleTrigger simpleTrigger=new SimpleTrigger("trigger1", "group1", new Date(), null, 10, 1500L);
scheduler.scheduleJob(jobDetail,simpleTrigger);
scheduler.start();
}
public static void main(String[] args) throws SchedulerException {
QuartzTest1 quartzTest1=new QuartzTest1();
quartzTest1.run();
}
}
需要的jar包:commons-logging-1.0.4.jar,quartz-all-1.6.0.jar,jta.jar。
参考了(xiaoyuqi00 的文章)。如果想知道更多的可参考收藏。
下面可以使用jdk的Timer这个类也可以实现类似的功能,来让程序在指定的时间去执行指定的功能。
public void init()
{
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
Date date = calendar.getTime();
//date是在指定的时间(即每天23点59分59秒)去执行该任务。第三个参数为间隔多长时间后再次执行指定任务
timer.schedule(new Task(rasManagerService, rasService, configService),
date,
1000 * 60 * 60 * 24);
}
class Task extends TimerTask
Task重写里面的run()方法,进行你自己的业务逻辑的处理。
分享到:
相关推荐
六、Quartz学习资源 本教程、学习手册和帮助手册将详细阐述Quartz的各个方面,从基本使用到高级特性的实践,帮助开发者从初学者到精通者。通过阅读这些资料,你可以掌握如何在项目中有效地使用Quartz,提升系统的...
在这个"Quartz学习的eclipse项目的实例"中,我们将深入探讨如何在Eclipse开发环境中配置和使用Quartz来实现复杂的定时调度需求。 首先,让我们了解Quartz的基本概念。Quartz的核心组成部分包括Job(工作)、Trigger...
### Quartz 学习知识点 #### 一、Quartz 概述 - **Quartz** 是一个功能强大的**开源任务调度框架**,适用于 Java 应用程序。它支持复杂的触发规则,能够灵活地调度任务。 #### 二、Quartz 的运行环境 - **嵌入式...
### Quartz学习篇 #### 一、Quartz简介与特点 Quartz是OpenSymphony开源组织在Jobscheduling领域的一个优秀开源项目,它完全采用Java语言开发,可以用来执行定时任务,功能强大,相比于Java内置的`java.util.Timer...
这个学习笔记将深入探讨Quartz的核心概念、主要功能以及如何在实际项目中使用它。 首先,我们要理解Quartz的基本架构。Quartz的核心组件包括Scheduler、Job、Trigger和Calendar。Scheduler是调度器,负责管理所有的...
通过这个“定时任务quartz学习用完整jar包”,你可以获得Quartz所有必要的类库,包括核心组件、JDBC驱动、以及其他相关的依赖,方便在项目中快速集成和使用Quartz框架。学习和掌握Quartz,可以有效地提升你的Java...
Quartz学习2 Quartz是一个开源的工作调度框架,它允许开发者在Java应用程序中安排任务的执行。这个"quartz学习2"的主题可能涉及到更深入的Quartz使用技巧、源码解析以及如何将其作为工具整合到项目中。这篇博客文章...
这个"Quartz学习资料"合集包含了多个资源,帮助开发者深入理解和掌握Quartz的使用。 Quartz的核心功能是定时任务调度,它允许开发者定义一系列的作业(Job)和触发器(Trigger),并将它们关联起来,实现程序在指定...
Quartz 是一个强大的任务调度框架,它允许开发者创建和安排任务执行,以便在特定时间自动触发。Quartz 的设计灵活性高,可以轻松地融入各种Java应用程序,包括独立应用、应用服务器和Servlet容器。以下是关于Quartz...
Spring Quartz是一款广泛使用的Java任务调度框架,用于在应用程序中安排周期性或一次性任务。Quartz集群(Cluster)是指多个Quartz实例(节点)共享相同的作业和触发器,从而实现高可用性和故障转移。本文将深入探讨...
Quartz是一款开源的作业调度框架,它为Java应用程序提供了强大的定时任务管理能力。Quartz Job Scheduling ...通过深入学习Quartz提供的文档和示例,开发者可以充分利用这个工具来提升应用程序的自动化和智能化程度。
Quartz学习1:深入理解分布式任务调度框架 Quartz是一个开源的作业调度框架,它允许开发者根据时间间隔来安排任务执行。在Java开发领域,Quartz是广泛应用的任务调度工具,尤其在需要进行定时任务处理或者分布式...
Quartz学习总结 Quartz.NET 是一款开源的作业调度框架,源自OpenSymphony的Quartz API,它允许开发者在应用程序中实现定时任务的自动化管理。Quartz的核心功能是创建、调度和执行作业(Jobs),这些作业可以是任何...
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。
通过阅读《Quartz学习.doc》和《Quartz学习.ppt》,你可以更深入地了解Quartz的原理、配置、使用示例和最佳实践,进一步提升你在Web开发中的任务调度能力。文档中可能还会涵盖如何处理Job执行异常、如何设置Job依赖...
Quartz 是一个强大的开源任务调度库,用于在Java应用程序中安排和执行各种任务。它具有高度可配置性和可扩展性,能够适应各种复杂的调度需求。Quartz 的核心特性包括任务和触发器的管理、任务持久化、事务支持以及...
Quartz 是一个强大的开源任务调度框架,用于在Java应用程序中实现复杂的定时任务。它提供了丰富的API,使得..."quartz 学习手册" 提供的 CHM 文件是一个很好的资源,可以帮助读者掌握 Quartz 的核心概念和使用方法。