`

Quarz入门(二)

阅读更多
看完入门一程序,接下来接着讲解入门二.
         JobDetail jobDetail = new JobDetail(); 
         jobDetail.setJobClass(QuartzReport.class); 
         jobDetail.setName("MyJob_1"); 
         jobDetail.setGroup("JobGroup_1"); 

1、创建JobDetial对象,设置工作项,这里有一个概念,JobClass,Name,Group.
上一讲的初始化程序为
 
    public JobDetail(String name, String group, Class jobClass) {
        setName(name);
        setGroup(group);
        setJobClass(jobClass);
    }

创建JobDetail给定JobClass,Name,group,如果group为空,则组为Scheduler.DEFAULT_GROUP默认组.其实是一样的。
         SimpleTrigger strigger = new SimpleTrigger(); 
         strigger.setName("Trigger_1"); 
         strigger.setGroup("Trigger_Group_1"); 
         strigger.setStartTime(new Date()); 

2、创建Trigger对象 ,这是一个简单的Trigger对象,设置了name,group,startTime.
上一讲的初始化程序为
 
    public CronTrigger(String name, String group) {
        super(name, group);
        setStartTime(new Date());
        setTimeZone(TimeZone.getDefault());
    }

创建CronTrigger给定名称和组,默认开始时间为当前时间.
         java.util.Calendar c = java.util.Calendar.getInstance(); 
         c.setTimeInMillis(System.currentTimeMillis() + 1000 * 1L); 
         strigger.setEndTime(c.getTime());  

3. 设置重复停止时间,并销毁该Trigger对象,上一节没有停止时间
 
         strigger.setRepeatInterval(1000 * 1L); 
         strigger.setRepeatCount(3); 

4. 设置重复间隔时间,设置重复执行次数
SchedulerFactory sf = new StdSchedulerFactory(); 
         Scheduler scheduler = null; 
         try { 
                 scheduler = sf.getScheduler(); 
                 scheduler.scheduleJob(jobDetail, strigger); 
                 scheduler.start(); 

         } catch (SchedulerException e) { 
                 e.printStackTrace(); 
         } 

5、创建Scheduler对象,并配置JobDetail和Trigger对象.并开启
        try { 
                 scheduler.shutdown(true); 
        } catch (SchedulerException e) { 
                e.printStackTrace(); 
        } 

6. 关闭调度器
经过以上概念的分析和理解,大概已经知道了调度器需要任务详情,触发详情,任务启动,任务关闭,而任务详情包括任务类,任务名称,任务组,触发详情包括触发开始时间,触发结束时间,触发间隔时间,触发执行次数,任务的启动和中止等。
以下是总的例子
public class TestJob2 {

	 public static void main(String[] args) {  
         JobDetail jobDetail = new JobDetail();  
         jobDetail.setJobClass(QuartzReport.class); 
         jobDetail.setName("MyJob_1"); 
         jobDetail.setGroup("JobGroup_1"); 
 
         SimpleTrigger strigger = new SimpleTrigger(); 
         strigger.setName("Trigger_1"); 
         strigger.setGroup("Trigger_Group_1"); 
         strigger.setStartTime(new Date());  
         
         java.util.Calendar c = java.util.Calendar.getInstance(); 
         c.setTimeInMillis(System.currentTimeMillis() + 1000 * 1L); 
         strigger.setEndTime(c.getTime()); 
         strigger.setRepeatInterval(100 * 1L);
         strigger.setRepeatCount(100); 

         SchedulerFactory sf = new StdSchedulerFactory(); 
         Scheduler scheduler = null; 
         try { 
                 scheduler = sf.getScheduler(); 
                 scheduler.scheduleJob(jobDetail, strigger); 
                 scheduler.start(); 

         } catch (SchedulerException e) { 
                 e.printStackTrace(); 
         } 
         try {    
                 scheduler.shutdown(true);  
         } catch (SchedulerException e) { 
                 e.printStackTrace(); 
         } 
 } 
分享到:
评论

相关推荐

    quartz实例,quartz入门例子

    在这个Quartz入门例子中,可能包含了一个名为`QuarzTest`的类或配置文件,它是实际运行的入口。通过分析和运行这个例子,你可以了解到如何在Spring中配置和使用Quartz,以及如何创建和调度Job。 学习Quartz时,你...

    Quartz入门学习(真丶入门)

    二、Quartz入门 1. **创建作业**:首先,你需要创建一个实现了`org.quartz.Job`接口的类,这个类就是你的任务逻辑。在`execute()`方法中编写实际的业务代码。 2. **定义触发器**:接着,定义一个触发器,设置执行...

    quartz scheduler 入门教程

    quartz scheduler 入门教程 Quartz Scheduler 是一种功能丰富、开源的任务调度程序库,可以在任何 Java 程序中使用。它可以用来创建简单或者复杂的执行次数可以达成千上万的任务。任务可以是任何 Java 可以做的事情...

    Quartz框架快速入门

    ### Quartz框架快速入门详解 #### 一、Quartz框架简介 Quartz是一个开源的作业调度框架,用于开发Java应用程序。它提供了强大的触发器(Trigger)机制用于关联作业(Job),同时还具备灵活的表达式用于配置定时...

    Quartz定时器从入门到进阶

    Quartz定时器是一个开源的作业调度框架,专为J2SE和J2EE应用程序设计,完全用Java编写。它的核心优势在于提供强大的灵活性和简单性,使得开发者可以轻松创建简单的或复杂的任务调度。Quartz支持多种特性,如数据库...

    quartz入门共3页.pdf.zip

    quartz入门共3页.pdf.zip

    Quartz如何从入门到精通.pdf

    Quartz入门到精通 Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如...

    Quartz详细入门教程

    非常详细的Quartz详细入门教程。新手值得一看,高手请忽略。

    Quartz详细入门教程.zip

    Quartz详细入门教程.zip

    Quartz中文入门教程

    Quartz中文入门教程 前言 Quartz让任务调度简单 Quartz的发展史 上手Quartz Quartz内部架构 作业 作业管理和存储 有效作业存储 作业和触发器 调度一个作业 用调度器(Scheduler)调用你的作业 编程调度...

    Quartz入门到精通 中文WORD版.rar

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群...

    Quartz 框架快速入门

    Quartz 框架快速入门 在前面两篇文章中简单介绍了在java应用程序中如何使用Quartz框架,这一篇中我们将看到如何在web环境下通过配置文件来完成Quartz的后台作业调度,而不必手工去创建Trigger和Scheduler

    Quartz2.2.1入门实例

    Quartz概述及入门实例,具体过程和效果看博文 http://blog.csdn.net/evankaka/article/details/45361469

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

    Spring集成quartz跑定时任务实例 自己写的例子并为实现job 有测试的主函数,请参考...springCon.quartz文件夹下 为对上诉博客理解透彻 结合spring看其配置的相关信息 就可以明白。

    Quartz入门教程

    "Quartz入门.html"这个文档可能详细介绍了如何设置和启动一个简单的Quartz调度程序。通常,你需要创建一个Job类,该类实现了`org.quartz.Job`接口,并重写了`execute`方法,这是实际执行的任务逻辑。然后,你可以...

Global site tag (gtag.js) - Google Analytics