知识点:Quartz任务异常处理方式
Posted nhdlb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识点:Quartz任务异常处理方式相关的知识,希望对你有一定的参考价值。
Quartz提供了二种解决方法
1 立即重新执行任务
2 立即停止所有相关这个任务的触发器
解决的方式是:在你的程序出错时,用Quartz提供的JobExecutionException类相关方法就能很好的解决
1.立即重新执行任务
try { int zero = 0; @SuppressWarnings("unused") int calculation = 4815 / zero; } catch (Exception e) { _log.error("执行任务出错了..."); JobExecutionException e2 = new JobExecutionException(e); // 这个工作将立即重新开始 e2.setRefireImmediately(true); throw e2; }
运用的方法为:e2.setRefireImmediately(true);
2.立即停止所有相关这个任务的触发器
try { int zero = 0; @SuppressWarnings("unused") int calculation = 4815 / zero; } catch (Exception e) { _log.info("--- Error in job!"); JobExecutionException e2 = new JobExecutionException(e); // 自动取消与此作业关联的所有触发器计划 e2.setUnscheduleAllTriggers(true); throw e2; }
运用的方法为:e2.setUnscheduleAllTriggers(true);
以上是关于知识点:Quartz任务异常处理方式的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Windows 服务中使用 Quartz.Net 安排任务?
Spring定时任务 Could not find default TaskScheduler bean异常处理