博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quartz基本使用(一)
阅读量:6979 次
发布时间:2019-06-27

本文共 2079 字,大约阅读时间需要 6 分钟。

hot3.png

Quartz三要素:Job(任务)、Trigger(触发器)、Scheduler(调度器)

Quartz官网地址:

一、先创建一个quartz项目:XXX_quartz;项目为maven项目。

二、通过在官网得到对应的quartz编写所需架包:

org.quartz-scheduler
quartz
2.2.1
org.quartz-scheduler
quartz-jobs
2.2.1

加入项目中的pom.xml文件中,或通过到maven架包搜索网站:;检索所需的quartz架包。

三、创建Job(任务):

public class HelloJob implements Job {	public void execute(JobExecutionContext context)			throws JobExecutionException {		// 打印当前的执行时间,格式为2017-01-01 00:00:00		Date date = new Date();		SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");		System.out.println("Current Exec Time Is : " + sf.format(date));		System.out.println("Hello World");	}}

必须通过实现Job接口;从而在execute方法中编写具体任务执行业务逻辑;通过查看JobExecutionContext源码,可此类得到上下任务及触发器执行详细信息;

四、调度任务触发

// 创建一个JobDetail实例,将该实例与HelloJob Class绑定,若未划分组的话,则默认组的值为DEFAULT		JobDetail jobDetail = JobBuilder.newJob(HelloJob.class)				.withIdentity("myJob").build();//创建触发器;触发器分为:simpleTrigger与cronTrigger;使用其中一种实例方式就好//simpleTrigger创建	// 创建一个触发器,设置两秒后执行,并永远执行;还设置:小时、分钟等各种执行逻辑		SimpleTrigger simpleTrigger = TriggerBuilder.newTrigger().withIdentity("simpleTrigger","group1").				withSchedule(SimpleScheduleBuilder.simpleSchedule().						withIntervalInSeconds(2).repeatForever()).startNow().build();//cronTrigger创建//可设置固定的开始时间(strtAt)及结束时间(endAt),//cron时间格式:[秒] [分] [时] [日] [月] [周] [年](年一般可省略)//每秒钟执行一次,永不停止CronTrigger trigger = (CronTrigger) TriggerBuilder				.newTrigger()				.withIdentity("myTrigger", "group1")				.withSchedule(						CronScheduleBuilder.cronSchedule("* * * * * ?"))				.build();  //创建schedule;并执行任务        SchedulerFactory sdFactory = new StdSchedulerFactory();        try {            Scheduler scheduler = sdFactory.getScheduler();            scheduler.start();            System.out.println(" scheduler is time "+scheduler.scheduleJob(jobDetail,trigger));            scheduler.start();        } catch (SchedulerException e) {            e.printStackTrace();        }

 

转载于:https://my.oschina.net/u/2251646/blog/1502792

你可能感兴趣的文章
如何衡量一个项目的交付质量???
查看>>
Ka的递归编程练习 Part4|Hanoi汉诺塔,双色汉诺塔的也有
查看>>
3月14号作业
查看>>
Feign实现服务调用
查看>>
菜鸟学习HTML5+CSS3(一)
查看>>
Inno Setup制作应用程序安装包
查看>>
小知识点
查看>>
scrollview gridview
查看>>
获取用户所属浏览器和设备
查看>>
20135306黄韧 信息安全系统设计基础期中学习总结
查看>>
Magento(麦进斗)安装问题
查看>>
大数据概述
查看>>
客户端动态调用WCF服务中的方法
查看>>
v-cloak,v-text,v-html的基本使用
查看>>
[POI2009]KAM-Pebbles BZOJ1115 [ 待填坑 ] 博弈
查看>>
Web充斥着存在漏洞的过期JavaScript库
查看>>
%f%g%e区别
查看>>
Ubuntu Vim YouCompleteMe 安装
查看>>
修改360浏览器 标题栏 显示的文字
查看>>
在Centos 7下编译openwrt+njit-client
查看>>