Quartz简单使用

官方的Quartz会提供例子的,例子看个前三四个感觉就够用了,主要就是起Timer的作用,但是比timer稳定,而且功能更全。

UpdateClientTimer.task(ClearJob.class, GlobalVars.CLEAR_MAP_TIMER);

一个反射的参数和一个Quartz表达式,这个表达式功能很强大

public static void task(Class cls, String expression) throws SchedulerException {

SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();

// current time
long ctime = System.currentTimeMillis();

JobDetail jobDetail = new JobDetail("detail", "group", cls);
// Initiate CronTrigger with its name and group name
CronTrigger cronTrigger = new CronTrigger("cronTrigger", "group");
try {
// setup CronExpression
CronExpression cexp = new CronExpression(expression);
//CronExpression cexp = new CronExpression("10 * * * * ?");
// Assign the CronExpression to CronTrigger
cronTrigger.setCronExpression(cexp);
} catch (Exception e) {
e.printStackTrace();
}
// schedule a job with JobDetail and Trigger
scheduler.scheduleJob(jobDetail, cronTrigger);

// start the scheduler
scheduler.start();
}

Quartz开始工作了 ,调度频率得看那个class是怎么写的。

public class ClearJob implements Job {
private static Logger log = Logger.getLogger(ClearJob.class);
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
log.info("start clear job ");
java.util.Calendar c = java.util.Calendar.getInstance();
int min = c.get(java.util.Calendar.MINUTE);
int second = c.get(java.util.Calendar.SECOND);
try {
if(min % 15 == 0 &&second == 0){

}
if(second % 10 == 0 ){

}

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

}

我设置的调度器是10秒调度一次(具体频率由expression决定)

然后在里面有两个动作,一个是10秒触发,一个是15分钟触发。

时间: 2024-10-14 00:05:48

Quartz简单使用的相关文章

Quartz简单实例

依赖: 看一下整体结构: 首先定义Job public class HelloJob implements Job { private static Logger _log = LoggerFactory.getLogger(HelloJob.class); public HelloJob() { } public void execute(JobExecutionContext context) throws JobExecutionException { // Say Hello to th

springmvc+quartz简单实现定时调度

一.简介:Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序.Jobs可以做成标准的Java组件或 EJBs.Quartz的最新版本为Quartz 2.3.0. 二.因为定时调度,在很多业务上面都会涉及,想要根据自己的规则来生成自己想要的达到的目的.所以利用quartz来时间定时任务的触发.是非常有必要的. 三.

quartz简单实现

quartz介绍 在我们的项目中,经常会遇到某个任务需要在特定的时间点执行,这个时间点可能是每天的某分某秒,可能是一周的指定某个星期某个时间等:quartz就是实现这样一个复杂任务调度逻辑的框架. 官方介绍:http://www.quartz-scheduler.org/ quartz实现 quartz实现比较简单. 1. Ijob接口实现 public interface IJob     {         void Execute(IJobExecutionContext context)

Quartz简单理解

这是我自己的百度文库的资料 Quartz核心的概念:scheduler任务调度.Job任务.Trigger触发器.JobDetail任务细节 Job任务:其实Job是接口,其中只有一个execute方法 JobDetail:任务细节,Quartz执行Job时,需要新建个Job实例,但是不能直接操作Job类,所以通过JobDetail来获取Job的名称.描述信息. Trigger触发器:执行任务的规则:比如每天,每小时等. 一般情况使用SimpleTrigger,和CronTrigger,这个触发

spring:quartz 简单例子

建立一个时序调度程序的过程如下: 1) 配置Job及JobDetail Bean,定义执行某个类里的特定方法: 2) 配置Trigger Bean,定义触发JobDetail的时间规律: 3) 配置SchedulerFactoryBean负责调度实际的Trigger:时序调度的运行模式有两种: 1) 一种是在某个特定时间自动运行,例如每天凌晨2点备份数据.每月初1号统计上月的数据等,我们称之为定时调度: 2)另一种是在服务启动一段时间后开始运行,再每隔一段时间再次运行,如系统监控程序每个10分钟

定时执行程序-Quartz简单实例

1.加jar包:Quartz自己quartz-1.8.3.jar和依赖包commons-logging.jar  .slf4j-log4j12-1.5.10.jar .slf4j-api-1.5.10.jar 2.一个类搞定!!!,直接run import  org.quartz.CronTrigger; import  org.quartz.Job; import  org.quartz.JobDetail; import  org.quartz.JobExecutionContext; im

OA现金盘源码搭建与Quartz简单使用

一. 什么是Quartz?简介: 定时任务调度的框架, 可以在框架中放入很多个应用程序(重点关注的是应用程序的编写) OA现金盘源码搭建QQ:2152876294 网址diguaym.com使用场景: 闹钟账单提醒核心概念 scheduler(SchedulerFactoryBean)是一个计划调度器容器,容器里面可以盛放众多的JobDetail和trigger,当容器启动后,里面的每个JobDetail都会根据trigger按部就班自动去执行.Trigger(CronTriggerFactor

Quartz初识以及简单运用

1.初识Quartz 1.1.概述 Quartz是一个完全由Java编写的一个开源的任务调度框架,说的简单点就是开发人员可以通过Quartz根据时间间隔调度任务,例如: 每隔一小时命令程序执行一个任务 每个月命令程序执行一个任务 指定某月末日命令程序执行一个任务 -- Quartz下载地址:http://www.quartz-scheduler.org/downloads/ 1.2.Quartz API 1.2.1.Scheduler--与scheduler交互的主要API; Scheduler

ASP.NET MVC5+EF6+EasyUI 后台管理系统(84)-Quartz 作业调度用法详解一

前言 我从Quartz2.0开始使用,并对其进行了封装了界面,可以参考 http://www.cnblogs.com/ymnets/p/5065154.html 最近拿出来进行了优化,并升级到最新版,温故而知新嘛 当初教程较少,并且是英文,现在很多地方都有中文的教程也是学习起来事半功倍 Quartz能实现什么? 他类似于SQL Server的代理与Timer定时器: 1.指定时间执行一条SQL语句或存储过程 2.指定时间发送邮件(执行一个C#方法) 3.有规律的定时执行想要做的事情(通过配置Cr