Quartz入门及简单实现
Quartz简介
Quartz是一个功能丰富的开源作业调度库,可以集成到几乎任何Java应用程序中 - 从最小的独立应用程序到最大的电子商务系统。Quartz可以用来创建执行数十,数百乃至数万个作业的简单或复杂的计划; 作业的任务被定义为标准的Java组件,它可以执行几乎任何你可能编程的任务。Quartz Scheduler包含许多企业级功能,例如支持JTA事务和集群。
如果您的应用程序具有需要在特定时间内发生的任务,或者如果您的系统经常性维护作业,那么Quartz可能是您理想的解决方案。
Quartz定时任务实现
导入jar包(maven依赖)
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
示例代码
自定义一个任务类实现Quartz的Job接口,并重写execute()函数
package com.qgx.quartz.job; import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; public class MyJob implements Job{ public void execute(JobExecutionContext arg0) throws JobExecutionException {
System.err.println("Hello Quartz!"); } }
然后定义一个测试类,需要将定义相应的任务(JobDetial)和触发器(trigger),并将其加到一个执行日程(Scheduler)中,启动日程。
package com.qgx.quartz; import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SimpleScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory; import com.qgx.quartz.job.MyJob; public class QuartzTest { public static void main(String[] args) throws Exception{ JobDetail job = JobBuilder.newJob(MyJob.class)
.withIdentity("job1", "group1")
.build(); // Trigger the job to run now, and then repeat every 5 seconds
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("trigger1", "group1")
.startNow()
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInSeconds()
.repeatForever())
.build(); // Grab the Scheduler instance from the Factory
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
// and start it off
scheduler.start();
// Tell quartz to schedule the job using our trigger
scheduler.scheduleJob(job, trigger);
}
}
执行结果:每5秒执行一次

Quartz入门及简单实现的更多相关文章
- Quartz 入门详解
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个, ...
- JAVAEE——BOS物流项目13:Quartz入门案例、核心概念、cron 表达式的格式(了解)
1.quartz入门案例 本入门案例基于spring和quartz整合完成. 第一步:创建maven工程,导入spring和quartz相关依赖 第二步:创建任务类 第三步:在spring配置文件中配 ...
- Quartz入门例子简介 从入门到菜鸟(一)
转: Quartz入门例子简介 从入门到菜鸟(一) 2016年11月19日 22:58:24 爱种鱼的猫 阅读数:4039 刚接触quartz这个词并不是在学习过程中...而是WOW里面的界面插件 ...
- Quartz 入门详解 专题
Cron-Expressions are used to configure instances of CronTrigger. Cron-Expressions are strings that a ...
- 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)
1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...
- [电子书] 《Android编程入门很简单》
<Android编程入门很简单>是一本与众不同的Android学习读物,是一本化繁为简,把抽象问题具体化,把复杂问题简单化的书.本书避免出现云山雾罩.晦涩难懂的讲解,代之以轻松活泼.由浅入 ...
- Quartz入门指南
Quartz入门指南 看到官网的教程对于新手来说不够全面和连贯,因此结合自己的使用过程写下这个入门指南,用以解惑.本文基于Quartz2.2.2版本.请注意,本文为了易于上手,省略了许多重要的概念,建 ...
- Quartz入门案例与介绍(与spring整合)
Quartz概述 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或 ...
- 定时任务框架Quartz-(一)Quartz入门与Demo搭建
注:本文来源于:是Guava不是瓜娃 <定时任务框架Quartz-(一)Quartz入门与Demo搭建> 一.什么是Quartz 什么是Quartz? Quartz是OpenSympho ...
随机推荐
- webstorm crack
webstorm 2018.2注册码如下:{"licenseId":"ThisCrackLicenseId","licenseeName": ...
- CUDA编程常见问题 转
http://blog.csdn.net/yutianzuijin/article/details/8147912 分类: 编程语言2012-11-05 10:55 2521人阅读 评论(0) 收藏 ...
- unity中将多个图片进行椭圆排序
//保存需要排序的精灵容器 public GameObject[] Sprites; public Transform centrePoint;//椭圆的中心点 ;//每个方块间的角度偏移 //保存位 ...
- 在python程序中的进程操作
multiprocess模块 multiprocess不是一个模块而是python中一个操作.管理进程的包. 之所以叫multi是取自multiple的多功能的意思,在这个包中几乎包含了和进程有关的所 ...
- asp.net mvc + dapper(ORM框架) + easyui框架简洁的信息管理项目
1.目录结构: 2.效果图: 3.IndexController控制器: using System; using System.Collections; using System.Collection ...
- oracle密码过期的修改
ALTER USER 用户名 IDENTIFIED BY 密码 ;
- 小程序点击按钮清空input
大致的思路是先给标签input设置一个value <input value="{{value}}" placeholder="最大输入长度10"/> ...
- 自由线程FreeThreadDOMDocument
Posted on 2006年09月4日by 不及格的程序员-八神 星期二 天气:晴 昨天燕子 自己去五爱了 给我买了一堆袜子 给妈买了一双鞋 给自己买了一件 红色的内衣服 挺好看的 在市场买了一 ...
- mysql 基本函数以及初学语句
创建数据库create database 数据库名: 查看数据库列表show databases; 选择数据库use 数据库名: 删除数据库drop database 数据库名: 创建表CREATE ...
- ngnix 500错误原因分析
参考http://www.cnblogs.com/huqiang/p/5333975.html