一种定时任务调度插件Quartz使用制造技术

技术编号:13461752 阅读:31 留言:0更新日期:2016-08-04 13:13
本发明专利技术公开了一种定时任务调度插件Quartz使用,属于SPRING框架领域,Quartz用一个小Java库发布文件,这个Java库文件包含了所有Quartz核心功能,这些功能的主要接口(API)是进程(Scheduler)接口;Quartz包括五种主要结构用于实现调度:作业(Job)接口,作业明细(JobDetail)类,触发器(Trigger)抽象类,进程(Scheduler)接口,进程工厂(SchedulerFactory)接口;本发明专利技术在Spring中使用,只对作业(Job)编码,触发器(Trigger) 和进程(Scheduler)可以通过配置设置。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了,属于SPRING框架领域,Quartz用一个小Java库发布文件,这个Java库文件包含了所有Quartz核心功能,这些功能的主要接口(API)是进程(Scheduler)接口;Quartz包括五种主要结构用于实现调度:作业(Job)接口,作业明细(JobDetail)类,触发器(Trigger)抽象类,进程(Scheduler)接口,进程工厂(SchedulerFactory)接口;本专利技术在Spring中使用,只对作业(Job)编码,触发器(Trigger) 和进程(Scheduler)可以通过配置设置。【专利说明】
本专利技术涉及计算机软件
,具体地说是。
技术介绍
随着技术的发展,需求的增加,业务的复杂,各个业务之间的联系更加紧密,许多业务的流程关系更加严谨,对硬件需求和单位触发率越来越高,对那些不是特别紧急,但是触发量大,延迟长的业务操作进行指定时间进行操作(如周末,夜间正常业务量少的时候)的要求更加强烈,因为这样既能满足业务高峰期,硬件设施能够支撑住,操作延迟减少,增加用户体验的同时也增加了系统的稳定性能。因此定时任务的使用就显的更加重要。
技术实现思路
本专利技术的技术任务是提供,解决触发量大,延迟长的业务操作进行指定时间进行操作方便的问题,设计使用Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表,提供了简单的操作。本专利技术解决其技术问题所采用的技术方案是: ,Quartz用一个小Java库发布文件,这个Java库文件包含了所有Quartz核心功能,这些功能的主要接口(API)是进程(Scheduler)接口;它提供了简单的操作,例如:将任务纳入日程或者从日程中取消,开始/停止/暂停日程进度。如果想将软件组件的执行纳入到日程中,它们只需简单地实现作业(Job)接口,这个接口有一个executeO方法。如果希望在日程安排的时间到达时通知组件,那么这些组件应实现触发监听器TriggerListener或者作业监听器JobListener接口。Quartz主过程可以在应用中启动或者运行,也可以作为一个独立的应用(带有RMI接口),或者在一个J2EE应用服务器中运行,并且可作为其实J2EE组件的一种引用资源。Quartz包括五种主要结构用于实现调度: 作业(Job)接口, 作业明细(JobDetail)类, 触发器(Trigger)抽象类, 进程(Scheduler)接口, 进程工厂(SchedulerFactory)接口 ; 该Quartz在Spring中使用,将所有的任务调度设置放在同一个地方,使任务易于维护,只对作业(Job)编码,触发器(Trigger)和进程(Scheduler)可以通过配置设置,可以使用Pojo Java Bean执行作业(Job),而无需实现作业(Job)接口。进作业(Job)接口表示一个作业(job)。一个作业专注做一件事。它的API非常简洁。只有一个execute方法,该方法在作业被执行时有Quartz调度。该方法有一个JobExecuteContext参数,可以通过该参数给executeO方法传递有用信息。一些数据可以通过JobDataMap传递给作业。如果一个JobDataMap被注册到作业明细(JobDetaiI)中,就能够在作业中通过JobExecuteContext来访问。JobDetaiI用来描述一个特定Job的信息。Job通过触发器(Trigger)触发。Quartz提供了集中触发器(Trigger)的实现,如Simp IeTrigger和CronTriggerc3SimpleTrigger类似一个简单时钟,你可以定义开始时间,结束时间,重复次数,重复周期C3CronTrigger类似Linux系统中的cron。CronTrigger的设置可以非常详细,如在每个月最后一个周五的上午10:15执行作业。需要注意的是触发器(Trigger)和作业(Job)是具有名字的,可以被赋值给一个组,但在同一组内不能出现同名。你可以对一个组创建一个触发器,在该组内的所有Job都将会执行。进程工厂(SchedulerFactory)用于获得进程(Scheduler)实例,可以用于注册作业和触发器。本专利技术的与现有技术相比,具有以下有益效果: Quartz是OpenSymphony开源组织在Job scheduling领域又一开源项目,它可以与J2EE与J2SE应用程序相结合使用也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的JAVA组件或Ejbs; Quartz主过程可以在应用中启动或者运行,也可以作为一个独立的应用(带有RMI接口),或者在一个J2EE应用服务器中运行,并且可作为J2EE组件的一种引用资源; 在Spring中使用Quartz而不是单独的一个应用,将所有的任务调度设置放在同一个地方,使任务易于维护。只对作业(Job)编码,触发器(Trigger)和进程(Scheduler)可以通过配置设置可以使用Pojo Java Bean执行作业(Job),而无需实现作业(Job)接口。【具体实施方式】下面对本专利技术作进一步说明。下面是一个简单的实例java中实现:每十秒钟打印一次欢迎。首先实现一个作业:public class SimpleJob implements Job { ◎Override public void execute(JobExecut1nContext argO) throws JobExecut1nExcept1n { System.0ut.println(〃 Welcome to Quartz!〃); } } 定义一个进程(Scheduler),注册触发器和作业: public class SimpleSchedule { public static void main(String[] args) { SchedulerFactory factory=new StdSchedulerFactory(); try { Scheduler scheduler = factory.getScheduler(); scheduler.start(); JobDetai I jobDetai I = new JobDetai I (,,Simple Job〃,nul I,SimpleJob.class); Trigger simplerTrigger = TriggerUtils.makeSecondlyTrigger(10);simplerTrigger.setName(〃SimpleTrigger〃);scheduler.scheduleJob(jobDetail, simplerTrigger);}catch (SchedulerExcept1n e) { // TODO Auto-generated catch block e.printStackTrace();} } } 这样执行main方法后,每十秒输出 W本文档来自技高网...

【技术保护点】
一种定时任务调度插件Quartz使用,其特征在于, Quartz用一个小Java库发布文件,这个Java库文件包含了所有Quartz核心功能,这些功能的主要接口(API)是进程(Scheduler)接口;Quartz包括五种主要结构用于实现调度:作业(Job)接口,作业明细(JobDetail)类 ,触发器(Trigger)抽象类,进程(Scheduler)接口,进程工厂(SchedulerFactory)接口;该Quartz在Spring中使用,将所有的任务调度设置放在同一个地方,只对作业(Job)编码, 触发器(Trigger) 和进程(Scheduler)可以通过配置设置,可以使用Pojo Java Bean执行作业(Job),而无需实现作业(Job)接口。

【技术特征摘要】

【专利技术属性】
技术研发人员:张福勋杨培强
申请(专利权)人:浪潮软件集团有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1