quartz实现动态配置以及启动与暂停
2015-07-24 14:53
459 查看
这是一篇从网上转来的文章,没有使用spring集成,但是用着也足够了,而且方便衡多
http://my.oschina.net/chenleijava/blog/111961
public class GameSchedulerServer {
private static final Logger logger= Log4jLogger.getLogger(GameSchedulerServer.class);
private Scheduler scheduler =null;
private GameSchedulerServer(){}
/**
* 获取 GameSchedulerServer
* @return
*/
public static GameSchedulerServer getInstance(){
return singlton.GAME_SCHEDULER_SERVER;
}
/**
* 启动定时任务
* @throws org.quartz.SchedulerException
*/
public void StartTimerTask() throws SchedulerException {
try {
SchedulerFactory schedulerFactory = new StdSchedulerFactory(config.QUARTZ_PATH);
this.scheduler = schedulerFactory.getScheduler();
this.scheduler.start();
} catch (SchedulerException e) {
logger.error("GameTaskServer start error",e);
}
}
/**
* 是否启动
* @return
* @throws org.quartz.SchedulerException
*/
public boolean isStartTimerTisk() throws SchedulerException {
return this.scheduler.isStarted();
}
/**
* 是否关闭
* @return
* @throws org.quartz.SchedulerException
*/
public boolean isShutDownTimerTisk() throws SchedulerException {
return this.scheduler.isShutdown();
}
/**
* 停止作业
* @param jobName
* @param groupName
*/
public void pauseJob(String jobName, String groupName) throws SchedulerException {
this.scheduler.pauseJob(jobName, groupName);
}
/**
* 恢复 job
* @param jobName
* @param groupName
*/
public void resumeJob(String jobName, String groupName) throws SchedulerException {
this.scheduler.resumeJob(jobName, groupName);
}
/**
* 删除指定的job
* @param jobName
* @param groupName
* @return
* @throws org.quartz.SchedulerException
*/
public boolean deleteJob(String jobName, String groupName) throws SchedulerException {
return this.scheduler.deleteJob(jobName, groupName);
}
/**
* 停止触发器
* @param triggerName
* @param group
*/
public void pauseTrigger(String triggerName,String group){
try {
this.scheduler.pauseTrigger(triggerName, group);//停止触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
/**
* 重启触发器
* @param triggerName
* @param group
*/
public void resumeTrigger(String triggerName,String group){
try {
this.scheduler.resumeTrigger(triggerName, group);//重启触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
/**
* 移除触发器
* @param triggerName
* @param group
* @return
*/
public boolean removeTrigdger(String triggerName,String group){
try {
this.scheduler.pauseTrigger(triggerName, group);//停止触发器
return this.scheduler.unscheduleJob(triggerName, group);//移除触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
private static final class singlton{
private static final GameSchedulerServer GAME_SCHEDULER_SERVER=new GameSchedulerServer();
}
}
http://my.oschina.net/chenleijava/blog/111961
public class GameSchedulerServer {
private static final Logger logger= Log4jLogger.getLogger(GameSchedulerServer.class);
private Scheduler scheduler =null;
private GameSchedulerServer(){}
/**
* 获取 GameSchedulerServer
* @return
*/
public static GameSchedulerServer getInstance(){
return singlton.GAME_SCHEDULER_SERVER;
}
/**
* 启动定时任务
* @throws org.quartz.SchedulerException
*/
public void StartTimerTask() throws SchedulerException {
try {
SchedulerFactory schedulerFactory = new StdSchedulerFactory(config.QUARTZ_PATH);
this.scheduler = schedulerFactory.getScheduler();
this.scheduler.start();
} catch (SchedulerException e) {
logger.error("GameTaskServer start error",e);
}
}
/**
* 是否启动
* @return
* @throws org.quartz.SchedulerException
*/
public boolean isStartTimerTisk() throws SchedulerException {
return this.scheduler.isStarted();
}
/**
* 是否关闭
* @return
* @throws org.quartz.SchedulerException
*/
public boolean isShutDownTimerTisk() throws SchedulerException {
return this.scheduler.isShutdown();
}
/**
* 停止作业
* @param jobName
* @param groupName
*/
public void pauseJob(String jobName, String groupName) throws SchedulerException {
this.scheduler.pauseJob(jobName, groupName);
}
/**
* 恢复 job
* @param jobName
* @param groupName
*/
public void resumeJob(String jobName, String groupName) throws SchedulerException {
this.scheduler.resumeJob(jobName, groupName);
}
/**
* 删除指定的job
* @param jobName
* @param groupName
* @return
* @throws org.quartz.SchedulerException
*/
public boolean deleteJob(String jobName, String groupName) throws SchedulerException {
return this.scheduler.deleteJob(jobName, groupName);
}
/**
* 停止触发器
* @param triggerName
* @param group
*/
public void pauseTrigger(String triggerName,String group){
try {
this.scheduler.pauseTrigger(triggerName, group);//停止触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
/**
* 重启触发器
* @param triggerName
* @param group
*/
public void resumeTrigger(String triggerName,String group){
try {
this.scheduler.resumeTrigger(triggerName, group);//重启触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
/**
* 移除触发器
* @param triggerName
* @param group
* @return
*/
public boolean removeTrigdger(String triggerName,String group){
try {
this.scheduler.pauseTrigger(triggerName, group);//停止触发器
return this.scheduler.unscheduleJob(triggerName, group);//移除触发器
} catch (SchedulerException e) {
throw new RuntimeException(e);
}
}
private static final class singlton{
private static final GameSchedulerServer GAME_SCHEDULER_SERVER=new GameSchedulerServer();
}
}
相关文章推荐
- 图像处理------光源退化效果
- 图像处理------光源退化效果
- 图像处理------光源退化效果
- 图像处理------光源退化效果
- 如何用工程手段解决前端开发和部署优化的综合问题
- Stream,byte[],LZMA
- hdu 5289 OO’s Sequence 2015 Multi-University Training Contest 1
- POJ 1905 - Expanding Rods 【二分/三分】
- 图像处理------光源退化效果
- 图像处理------光源退化效果
- JS 控制文本框只能输入中文/中文、英文、数字、空格/中文、英文、数字、小数点
- SGU 281.Championship
- 图像处理------光源退化效果 2015-07-24 14:53 30人阅读 评论(0) 收藏
- 图像处理------光源退化效果 分类: 视频图像处理 2015-07-24 14:53 30人阅读 评论(0) 收藏
- iOS内存管理(objective-c)
- jsp表单验证汇总
- 接口,继承和多态
- 类和对象
- Darwin Streaming Server编译
- 怎样远程开机内网电脑?