Java Quartz如何控制计时器的启动和停止

作者:梦兮      发布时间:2021-04-20      浏览量:0
以下是基于Spring4.X,Quart

以下是基于Spring4.X,Quartz1.6.6。一般的想法是。通过Spring注入工厂对象来获取Scheduler。解决执行类不能通过JobFactory使用注入注释的问题。

QuartzManager封装了定时器常用操作方法

1、JobFactory对象注入类

包Frawork.basic.Jobs;@重写受保护对象createJobInstance(TriggerFiredBundle包)抛出异常{//调用父类的方法对象obInstance=Super.createJobInstance(Bundle);//进行注入CapableBeanFactory。AutoireBean(Jobs Instance);返回Jobs Instance;}

WorkScheduledJod执行类,它需要继承org.Quartz.作业、通过程序控制的计时器、执行方法的默认执行。

导入org.Quartz.Jobs;import org.Quartz.JobExecutionContext;import org.Quartz.JobExecutionException;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.context.ApplicationContext;import javax.notation.Resource;公共类WorkScheduledJod实现作业{Logger记录器=LoggerFactory.getLogger(WorkScheduledJod.class);@Resource私有ApplicationContext上下文;@overoveroveroverpublic EXECUTE(JobtionContext作业ExecutionContext)引发JobExecution{logger.info(“上下文[{}]”,上下文);}

QuartzService用于对外提供服务

包Frawork.basic.Quartz.impl;导入用于对外提供服务Frawork.basic.Quartz.QuartzManager;导入org.Quartz.Scheduler;导入org.slf4j。记录器;导入org.slf4j.LoggerFactory;导入javax.notation.Resource;公共类QuartzService{@Resource私有QuartzManager QuartzManager;私有静态最终Logger记录器=LoggerFactory.getLogger(QuartzService.class);@Overoverpublic voididstartAllJod(){logger.info(“开启定时器”);QuartzManager.add.add作业(WorkScheduledJod.JOD_ID,Scheduler.DEFAULT_group,WorkScheduledJod.TRGER_ID,Scheduler.DEFAULT_group,WorkScheduledJod.class,WorkScheledJod.CRodON_表达式);Logger.info(“挂起定时器”);QuartzManager.PauseJobs(WorkScheduledJod.JOD_ID,Scheder.DEFAULT_Group);logger.info(“日本語”);QuartzManager.resumeJobs(WorkScheduledJod.JOD_ID,Scheder.DEFAULT_Group);logger.info(“✕”);QuartzManager.RemoveJobs(WorkScheduledJod.JOD_ID,D.D);QartzerManager.emoveJobs(WorkScheduledJod.Jededed.jdd);qtzzreManager.sumeManager.Workod.Jodod.Jod.Jodod.Jod.DID,JID。默认_组);}公共QuartzManager getQuartzManager(){返回石英管理器;}

2 Spring xmlns=“http://www.springframework.org/schema/beans”xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”xmlns:task=“http://www.springframework.org/schema/task”xsi:schemaLocation=“http://www.springframework.org/schema/task http://www.springframework.

<?xml版本=”1.0“编码=”utf-8“><!><!>由QuartzManager>ref=”作业工厂“><!-><定时器管理工具类-argname=”SchedulerFactoryBean“/><!-定时器服务这里仅作启动演示->

3、提示: