-
前言
Quartz是当下使用最多的作业调度框架,它提供了巨大的灵活性而不牺牲简单,你能够用它来为执行一个作业而创建简单的或复杂的调度 -
封装目的
简单的封装使Quartz更加好用,使调度本身与业务分离,耦合程度更低,使编码人员只需要关注自己的业务实现而不用关注调度本身。
由于定时调度实现的具体业务逻辑未知,比如同步人员或组织,报表统计等,不可预知的资源消耗对性能的影响及跑挂的风险,为了不影响主程序,推荐单独一个工程独立运行 -
实现效果
对原有的Job接口进行了再一次封装,添加了新的接口IJob,实现用最少的代码实现作业的配置,系统的监听会随着服务一起启动,自动扫描到这个类,自动根据配置信息,生成作业并自动调度,代码如下:package job; import java.util.Date; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import coreJob.IJob; import coreJob.JobInfo; /** * 调度任务简要示例 * @author Ruoli * 2015/07/11 */ public class MyJob implements IJob { public JobInfo setJobInfo() { JobInfo job=new JobInfo(); job.setJobGroup("MyJobGroup");//设置任务分组 job.setJobName("自定义同步调度");//设置任务名称 job.setStartTime(new Date()); //设置任务开始时间 job.setTriggerType(1);//设置任务执行计划 //1:每分钟执行一次, //2:每小时执行一次, //3:每天执行一次, //0:使用cron表达式执行,使用此项时cron表达式必填。 //job.setCron("0 0/5 14 * * ?");s //job.setCronDescription("在每天下午2点到下午2:55期间的每5分钟触发"); return job; } public void execute(JobExecutionContext arg0) throws JobExecutionException { System.out.println(System.currentTimeMillis()); } }
-
任务监控
为了更好的监控查看已有的作业,并对作业进行有效的控制,比如暂停,恢复,立即执行等,实现了任务监控管理功能,如下图: -
下载代码
提供源码下载
对Quartz的简单封装
最新推荐文章于 2022-03-22 18:35:48 发布