欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Quartz2.x增、删、改工具类,quartz2.x增工具类,```javapacka

来源: javaer 分享于  点击 39605 次 点评:145

Quartz2.x增、删、改工具类,quartz2.x增工具类,```javapacka


```javapackage com.a2563;

import static org.quartz.CronScheduleBuilder.cronSchedule;import static org.quartz.JobBuilder.newJob;import static org.quartz.TriggerBuilder.newTrigger;

import org.apache.logging.log4j.Logger;import org.quartz.Job;import org.quartz.JobDetail;import org.quartz.JobKey;import org.quartz.Scheduler;import org.quartz.SchedulerException;import org.quartz.Trigger;import org.quartz.TriggerKey;import org.quartz.impl.StdSchedulerFactory;/* * 类名:QuartzManager <br/> * 功能:<br/> * 详细:Quartz增、删、改工具类 <br/> * 作者: Tliu <br/> * 日期:2015-7-17 <br/> /public class QuartzUtils {

private Logger log = null;private Scheduler scheduler = null;public static final String DATA_KEY = "STATE_DATA";public QuartzUtils (){    try {        log = org.apache.logging.log4j.LogManager.getLogger();        scheduler = new StdSchedulerFactory().getScheduler();        log.info("初始化调度器 ");    } catch (SchedulerException ex) {        log.error("初始化调度器=> [失败]:" + ex.getLocalizedMessage());    }}   public void addJob(String name, String group, Class<? extends Job> clazz,String cronExpression) {                      try {              //构造任务        JobDetail job = newJob(clazz)                .withIdentity(name, group)                                 .build();        //构造任务触发器        Trigger trg = newTrigger()                .withIdentity(name, group)                .withSchedule(cronSchedule(cronExpression))                .build();        //将作业添加到调度器        scheduler.scheduleJob(job, trg);        log.info("创建作业=> [作业名称:" + name + " 作业组:" + group + "] ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("创建作业=> [作业名称:" + name + " 作业组:" + group + "]=> [失败]");    }}public void removeJob(String name, String group){    try {        TriggerKey tk = TriggerKey.triggerKey(name, group);        scheduler.pauseTrigger(tk);//停止触发器          scheduler.unscheduleJob(tk);//移除触发器        JobKey jobKey = JobKey.jobKey(name, group);        scheduler.deleteJob(jobKey);//删除作业        log.info("删除作业=> [作业名称:" + name + " 作业组:" + group + "] ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("删除作业=> [作业名称:" + name + " 作业组:" + group + "]=> [失败]");    }}public void pauseJob(String name, String group){    try {        JobKey jobKey = JobKey.jobKey(name, group);        scheduler.pauseJob(jobKey);        log.info("暂停作业=> [作业名称:" + name + " 作业组:" + group + "] ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("暂停作业=> [作业名称:" + name + " 作业组:" + group + "]=> [失败]");    }}public void resumeJob(String name, String group){    try {        JobKey jobKey = JobKey.jobKey(name, group);                 scheduler.resumeJob(jobKey);        log.info("恢复作业=> [作业名称:" + name + " 作业组:" + group + "] ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("恢复作业=> [作业名称:" + name + " 作业组:" + group + "]=> [失败]");    }       }public void modifyTime(String name, String group, String cronExpression){            try {        TriggerKey tk = TriggerKey.triggerKey(name, group);        //构造任务触发器        Trigger trg = newTrigger()                .withIdentity(name, group)                .withSchedule(cronSchedule(cronExpression))                .build();               scheduler.rescheduleJob(tk, trg);        log.info("修改作业触发时间=> [作业名称:" + name + " 作业组:" + group + "] ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("修改作业触发时间=> [作业名称:" + name + " 作业组:" + group + "]=> [失败]");    }}public void start() {    try {        scheduler.start();        log.info("启动调度器 ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("启动调度器=> [失败]");    }}public void shutdown() {    try {        scheduler.shutdown();        log.info("停止调度器 ");    } catch (SchedulerException e) {        e.printStackTrace();        log.error("停止调度器=> [失败]");    }}

}```来自:http://my.oschina.net/u/1859292/blog/504225

相关栏目:

用户点评