Quartz的常用类有哪些

Quartz是开源组织OpenSymphony的一个作业调度框架,采用多线程架构,可伸缩性强,可集群扩展。

为企业提供成都网站制作、网站建设、外贸网站建设、网站优化、营销型网站建设、竞价托管、品牌运营等营销获客服务。创新互联拥有网络营销运营团队,以丰富的互联网营销经验助力企业精准获客,真正落地解决中小企业营销获客难题,做到“让获客更简单”。自创立至今,成功用技术实力解决了企业“网站建设、网络品牌塑造、网络营销”三大难题,同时降低了营销成本,提高了有效客户转化率,获得了众多企业客户的高度认可!

Quartz提供的常用类:Scheduler, SchedulerFactory, Job, JobDetail, JobBuilder, Trigger, TriggerBuilder, ScheduleBuilder

UML类图如下:

Quartz的常用类有哪些

Scheduler时Quartz调度程序的主要接口,维护一个JobDetails和Triggers的注册表,到触发时间时,调度程序将执行Job。

调度程序Scheduler实例通过SchedulerFactory工厂创建,有两个实现类DirectSchedulerFactory和StdSchedulerFactory,前者不写入持久化数据库,后者加载quartz.properties属性配置文件,将查找加载当前目录和org.quartz包。

任务是实现Job接口的一个类,实现方法execute(),可声明属性:

- @DisallowConcurrentExecution,同时只执行一个实例。

- @PersisJobDataAfterExecution,正常执行后将JobDataMap备份。

JobDetail将任务属性传递给Scheduler,通过JobBuilder创建,JobDataMap保存任务实例的状态信息。

触发器Trigger通过TriggerBuilder创建,结合ScheduleBuilder设置时间规则,可通过JobDataMap传递数据给Job。常用的两种触发器:

- SimpleTrigger:指定开始时间、结束时间、重复次数、执行间隔。

- CronTrigger:使用Cron表达式设置时间规则。

构建ScheduleBuilder设置时间规则时,可配置Misfire选项,指定执行失败熄火时的处理规则:


含义

支持ScheduleBuilder

IgnoreMisfires

马上执行,比如整点9点失败,系统10:15启动,会马上执行9点10点的任务。

SimpleSchedule

CronScheduleBuilder

CalendarIntervalScheduleBuilder

DailyTimeIntervalScheduleBuilder

FireNow

立即再次触发

SimpleSchedule

NowWithExistingCount

立即再次触发,不计入总次数。

SimpleSchedule

NowWithRemainingCount

立即再次触发,计入总次数。

SimpleSchedule

NextWithExistingCount

等待下次执行,不计入总次数。

SimpleSchedule

NextWithRemainingCount

等待下次执行,计入总次数。

SimpleSchedule

DoNothing

不做任何处理,执行下一次周期。

CronScheduleBuilder

CalendarIntervalScheduleBuilder

DailyTimeIntervalScheduleBuilder

FireAndProceed

合并下一个周期,正常执行。比如整点9点10点失败,系统10:15启动,在11点合并执行一次。

CronScheduleBuilder

CalendarIntervalScheduleBuilder

DailyTimeIntervalScheduleBuilder

名称栏目:Quartz的常用类有哪些
网站路径:https://www.cdcxhl.com/article2/iigiic.html

成都网站建设公司_创新互联,为您提供服务器托管响应式网站微信公众号域名注册全网营销推广手机网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站优化排名