java quartz 停止_Quartz的任务的临时启动和暂停和恢复

这是一个简单的Java Quartz任务管理器实现,包括启动、检查调度状态、关闭调度、添加、删除、暂停和恢复Job及Trigger的方法。通过此类可以方便地控制Quartz定时任务的运行状态。
摘要由CSDN通过智能技术生成

package com.easyway.app.quartz.mgr;

import java.util.Date;

import java.util.List;

import java.util.Map;

import org.quartz.JobDataMap;

import org.quartz.JobDetail;

import org.quartz.JobKey;

import org.quartz.Scheduler;

import org.quartz.SchedulerException;

import org.quartz.SchedulerFactory;

import org.quartz.Trigger;

import org.quartz.TriggerKey;

import org.quartz.impl.StdSchedulerFactory;

import org.quartz.impl.matchers.GroupMatcher;

/**

* 一个简单的quartz任务管理器

* @author longgangbai

*

*/

public class QuartzScheduleMgr {

private static  Scheduler scheduler=getScheduler();

/**

* 创建一个调度对象

* @return

* @throws SchedulerException

*/

private static Scheduler getScheduler() {

SchedulerFactory sf = new StdSchedulerFactory();

Scheduler scheduler=null;

try {

scheduler = sf.getScheduler();

} catch (SchedulerException e) {

e.printStackTrace();

}

return scheduler;

}

public static Scheduler getInstanceScheduler(){

return scheduler;

}

/**

* 启动一个调度对象

* @throws SchedulerException

*/

public  void start() throws SchedulerException

{

scheduler.start();

}

/**

* 检查调度是否启动

* @return

* @throws SchedulerException

*/

public  boolean isStarted() throws SchedulerException

{

return scheduler.isStarted();

}

/**

* 关闭调度信息

* @throws SchedulerException

*/

public  void shutdown() throws SchedulerException   {

scheduler.shutdown();

}

/**

* 添加调度的job信息

* @param jobdetail

* @param trigger

* @return

* @throws SchedulerException

*/

public  Date scheduleJob(JobDetail jobdetail, Trigger trigger)

throws SchedulerException{

return scheduler.scheduleJob(jobdetail, trigger);

}

/**

* 添加相关的触发器

* @param trigger

* @return

* @throws SchedulerException

*/

public  Date scheduleJob(Trigger trigger) throws SchedulerException{

return scheduler.scheduleJob(trigger);

}

/**

* 添加多个job任务

* @param triggersAndJobs

* @param replace

* @throws SchedulerException

*/

public  void scheduleJobs(Map> triggersAndJobs, boolean replace) throws SchedulerException

{

scheduler.scheduleJobs(triggersAndJobs, replace);

}

/**

* 停止调度Job任务

* @param triggerkey

* @return

* @throws SchedulerException

*/

public  boolean unscheduleJob(TriggerKey triggerkey)

throws SchedulerException{

return scheduler.unscheduleJob(triggerkey);

}

/**

* 停止调度多个触发器相关的job

* @param list

* @return

* @throws SchedulerException

*/

public  boolean unscheduleJobs(List triggerKeylist) throws SchedulerException{

return scheduler.unscheduleJobs(triggerKeylist);

}

/**

* 重新恢复触发器相关的job任务

* @param triggerkey

* @param trigger

* @return

* @throws SchedulerException

*/

public  Date rescheduleJob(TriggerKey triggerkey, Trigger trigger)

throws SchedulerException{

return scheduler.rescheduleJob(triggerkey, trigger);

}

/**

* 添加相关的job任务

* @param jobdetail

* @param flag

* @throws SchedulerException

*/

public  void addJob(JobDetail jobdetail, boolean flag)

throws SchedulerException   {

scheduler.addJob(jobdetail, flag);

}

/**

* 删除相关的job任务

* @param jobkey

* @return

* @throws SchedulerException

*/

public  boolean deleteJob(JobKey jobkey) throws SchedulerException{

return scheduler.deleteJob(jobkey);

}

/**

* 删除相关的多个job任务

* @param jobKeys

* @return

* @throws SchedulerException

*/

public     boolean deleteJobs(List jobKeys)

throws SchedulerException{

return scheduler.deleteJobs(jobKeys);

}

/**

*

* @param jobkey

* @throws SchedulerException

*/

public  void triggerJob(JobKey jobkey) throws SchedulerException    {

scheduler.triggerJob(jobkey);

}

/**

*

* @param jobkey

* @param jobdatamap

* @throws SchedulerException

*/

public  void triggerJob(JobKey jobkey, JobDataMap jobdatamap)

throws SchedulerException   {

scheduler.triggerJob(jobkey, jobdatamap);

}

/**

* 停止一个job任务

* @param jobkey

* @throws SchedulerException

*/

public  void pauseJob(JobKey jobkey) throws SchedulerException  {

scheduler.pauseJob(jobkey);

}

/**

* 停止多个job任务

* @param groupmatcher

* @throws SchedulerException

*/

public  void pauseJobs(GroupMatcher groupmatcher)

throws SchedulerException   {

scheduler.pauseJobs(groupmatcher);

}

/**

* 停止使用相关的触发器

* @param triggerkey

* @throws SchedulerException

*/

public  void pauseTrigger(TriggerKey triggerkey)

throws SchedulerException   {

scheduler.pauseTrigger(triggerkey);

}

public  void pauseTriggers(GroupMatcher groupmatcher)

throws SchedulerException   {

scheduler.pauseTriggers(groupmatcher);

}

/**

* 恢复相关的job任务

* @param jobkey

* @throws SchedulerException

*/

public  void resumeJob(JobKey jobkey) throws SchedulerException {

scheduler.pauseJob(jobkey);

}

public  void resumeJobs(GroupMatcher matcher)

throws SchedulerException   {

scheduler.resumeJobs(matcher);

}

public  void resumeTrigger(TriggerKey triggerkey)

throws SchedulerException   {

scheduler.resumeTrigger(triggerkey);

}

public  void resumeTriggers(GroupMatcher  groupmatcher)

throws SchedulerException

{

scheduler.resumeTriggers(groupmatcher);

}

/**

* 暂停调度中所有的job任务

* @throws SchedulerException

*/

public  void pauseAll() throws SchedulerException

{

scheduler.pauseAll();

}

/**

* 恢复调度中所有的job的任务

* @throws SchedulerException

*/

public  void resumeAll() throws SchedulerException

{

scheduler.resumeAll();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值