quartz入门(一)下载及简单实例

下载

官网下载地址:http://www.quartz-scheduler.org/

下载步骤:

1、点击橘黄色的download连接。

2、点击Direct Download下面的Quartz 2.2.1 full distribution (release notes)

3、点击quartz-2.2.1-distribution.tar.gz进行下载,选择两个中的任何一个即可。

4、Maven项目引入

<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.2.1</version>
</dependency>
<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz-jobs</artifactId>
    <version>2.2.1</version>
</dependency>

example1

此实例为官方文档中提供的第一个实例,针对此实例,通过注解的形式进行一一说明。目前quartz使用版本为2.2.1。

1、定义任务处理类HelloJob实现Job接口

package com.secbro.job;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

import java.util.Date;

/**
 * 实现Job接口,定义具体运行的任务
 */
public class HelloJob implements Job{

    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        //此处执行的任务就是打印出当前的时间
        System.out.println("Hello World! - " + new Date());
    }
}

2、执行任务的处理类

package com.secbro.test;

import com.secbro.job.HelloJob;
import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;

import java.util.Date;

/**
 * 执行任务的客户端
 */
public class SimpleExample {
    /**
     * 定义构造方法
     */
    public SimpleExample() {
    }

    public void run() throws SchedulerException {
        // 日志打印,为方便起见,此出替换为控制台打印
        System.out.println("------- Initializing ----------------------");

        // 通过SchedulerFactory获取一个调度器实例
        StdSchedulerFactory sf = new StdSchedulerFactory();
        // 代表一个Quartz的独立运行容器
        Scheduler scheduler = sf.getScheduler();
        System.out.println("------- Initialization Complete -----------");

        // 将返回某一时间点一分钟以后的时间
        Date runtime = DateBuilder.evenMinuteDate(new Date());
        System.out.println("------- Scheduling Job  -------------------");
        // 创建一个JobDetail实例,此版本JobDetail已经作为接口(interface)存在,通过JobBuilder创建
        JobDetail jobDetail = JobBuilder.newJob(HelloJob.class).withIdentity("job1","group1").build();
        // 定义调度规则接口
        Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1","group1").startAt(runtime).build();

        // 添加JobDetail到Scheduler容器中,并且和Trigger进行关联
        scheduler.scheduleJob(jobDetail,trigger);
        System.out.println(jobDetail.getKey() + " will run at: " + runtime);

        scheduler.start();

        System.out.println("------- Started Scheduler -----------------");
        System.out.println("------- Waiting 65 seconds... -------------");

        try {
            Thread.sleep(65000L);
        } catch (Exception var8) {
            ;
        }

        System.out.println("------- Shutting Down ---------------------");
        scheduler.shutdown(true);
        System.out.println("------- Shutdown Complete -----------------");
    }

    public static void main(String[] args) throws Exception {
        SimpleExample example = new SimpleExample();
        example.run();
    }

}

3、执行之后,打印结果如下

------- Initializing ----------------------
------- Initialization Complete -----------
------- Scheduling Job  -------------------
group1.job1 will run at: Fri Jun 12 16:37:00 CST 2015
------- Started Scheduler -----------------
------- Waiting 65 seconds... -------------
Hello World! - Fri Jun 12 16:37:00 CST 2015
------- Shutting Down ---------------------
------- Shutdown Complete -----------------

Process finished with exit code 0

其中一下内容为HelloJob定时任务打印信息。

Hello World! - Fri Jun 12 16:37:00 CST 2015

至此,Quartz的下载及简单实例已经完成。

时间: 2024-10-01 07:05:34

quartz入门(一)下载及简单实例的相关文章

DWR 3.0 入门示例教程(简单实例)

DWR(Direct Web Remoting) DWR is a Java library that enables Java on the server and JavaScript in a browser to interact and call each other as simply as possible. Dwr能让在服务器端的java代码和浏览器客户端的javascript代码尽可能简单的相互调用. DWR is Easy Ajax for Java! 官网:http://di

React Native ——入门环境搭配以及简单实例

一.Homebrew 是OS X 的套件管理器. 首先我们需要获取 Homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 1.我们可以先通过在终端输入: brew -v 如果没有安装就输入Homebrew的镜像路径去下载 2.拥有了brew,就可以通过它去下载一些依赖了,比如node,我们可以在终端输入:brew install node,如果

Quartz入门实例13-spirng4和quartz2实现动态任务调用

pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <model

quartz入门实例

一 Quarta介绍 1 Quartz是什么 Quartz就是一个纯 Java 实现的作业调度工具,相当于数据库中的 Job.Windows 的计划任务.Unix/Linux 下的 Cron,但 Quartz 可以把排程控制的更精细. 2 Quartz 框架的发展历程 Quartz项目是由James House创立的,在1998年就有该框架最初的构思,包括作业队列的概念,使用线程池来处理作业,在2001年春天在SourceForge 上创立了该项目. Quartz 的目录结构和内容 Docs Q

Quartz 入门详解

Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表.Jobs可以做成标准的Java组件或 EJBs.官方网站:http://www.opensymphony.com/quartz 相关Jar:   quartz-all-1.6.0.jar   jta.jar   commons-logging-1.1.jar

Spring Boot 快速入门 史上最简单

1.Spring Boot 概述 Spring Boot 是所有基于 Spring 开发的项目的起点.Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件. 2.什么是 Spring Boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.用我的话来理解,就是spring boot其实不是什么新

javamail发送邮件的简单实例(转)

javamail发送邮件的简单实例 今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题.为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用.呵呵 以下三段代码是我的全部代码,朋友们如果想用,直接复制即可. 第一个类:MailSenderInfo.java package com.util.mail;    /**    * 发送邮件需要使用的基本信息  *author by wangfun http://www.5a520.cn 小说520   */  

jQuery Datatable 实用简单实例

目标: 使用jQuery Datatable构造数据列表,并且增加或者隐藏相应的列,已达到数据显示要求.同时,jQuery Datatable强大的功能支持:排序,分页,搜索等. Query Datatable能良好支持数据完全加载到本地后构建数据列表,排序.分页.搜索等功能就会自带,不需要我们去关心,在此主要说明通过后台动态的加载数据,已达到在大数据面前提高效率的效果. 1. 通过后台进行分页 2. 通过后台进行排序 3. 通过后台进行搜索 具体使用方法: 1. 首先构建我们需要的数据列表,以

cxf方式实现WebService的简单实例

cxf实现WebService的发布和调用简单实例. 1.准备工作:下载cxf  http://cxf.apache.org/download.html lib文件下的WHICH_JARS文件列出了各用途下所需的jar包. bin目录下存放运行文件. 2.服务端:先新建接口和相关的实现类.发布的服务是接口的方式. 代码如下 1 package com.liujf; 2 3 import javax.jws.WebParam; 4 import javax.jws.WebService; 5 6