使用oracle只读访问java中的Quartz持久作业调度器实现

时间:2013-12-23 07:44:59

标签: java spring quartz-scheduler

这是方案,

我正在开发一个Web应用程序,我正在使用java,spring,oracle。我的要求是安排一些工作,其中用户应该通过某个UI指定执行时间,并且即使重新启动服务器或重新部署应用程序,作业也应该是一次性的。 从最近几天我经历了很多关于石英持久性调度程序的stackoverflow帖子,但是这里很棘手,我不能从我的java代码执行任何更新或插入语句,我只允许在plsql过程中执行所有db的东西并调用来自java代码的那个程序。

所以,问题是我不能直接执行石英持久性实施。如果有人告诉我正确处理它的方法,那将非常充分。 简而言之,我如何实现自己的表结构和plsql过程来实现作业持久性,我可以在应用程序/服务器启动时加载一次,并允许用户更新触发时间和其他参数。

由于

2 个答案:

答案 0 :(得分:1)

您正在寻找的是Quartz JdbcJobStore,它存储作业并跟踪它们的执行情况。请阅读以下内容:

答案 1 :(得分:0)

@Gan,如果需要,可以通过覆盖JobStoreCMT类Quartz并将其作为quartz.properties中的作业存储类用作属性org.quartz.jobStore.class的值来自定义石英持久性。

#============================================================================
# Configure JobStore  
#============================================================================

 org.quartz.jobStore.misfireThreshold = 60000
 org.quartz.jobStore.class = <package>.CustomJobStoreCMT