【发布时间】:2016-03-27 08:35:00
【问题描述】:
使用 Quartz Scheduler 持久化数据的内部机制是什么? 我浏览了互联网,但没有找到明确的描述。 如果您建议在 hibernate 平台上工作,那就太好了。
【问题讨论】:
标签: quartz-scheduler
使用 Quartz Scheduler 持久化数据的内部机制是什么? 我浏览了互联网,但没有找到明确的描述。 如果您建议在 hibernate 平台上工作,那就太好了。
【问题讨论】:
标签: quartz-scheduler
当你在你的项目中使用 Quartz Scheduler 时,你应该有一个名为 quartz.properties 的属性文件。在此文件中,您应该使用参数确定您的持久性机制:org.quartz.jobStore.class
该参数的取值如下:
org.quartz.impl.jdbcjobstore.JobStoreCMT:意思是你想持久化在数据库中,事务由容器管理(如Weblogic,JBoss,...)org.quartz.impl.jdbcjobstore.JobStoreTX:这意味着你想在数据库中持久化并且事务不是由容器管理的。此选项主要在您将 Quartz Scheduler 作为独立应用程序运行时使用。org.quartz.simpl.RAMJobStore: 这个选项实际上不推荐在生产环境中使用,因为根据这个参数,Quartz 将作业和触发器只保存在 RAM 中!org.terracotta.quartz.TerracottaJobStore:最后一个选项是使用 Terracotta Server 作为持久化单元,Quartz 说这是最快的方式。我自己更喜欢第一个选项,我认为它更直接且更可靠。 您可以阅读有关此配置的更多信息here。 而关于hibernate,quartz会管理持久化任务,比如回滚和持久化,你不会参与这个过程。
【讨论】: