阅读(2405) (0)

Quartz插件配置

2017-09-21 11:02:17 更新

配置计划程序插件

像通过配置文件配置插件的Listeners一样,包括给出一个名称,然后指定类名称以及要在实例上设置的任何其他属性。该类必须有一个no-arg构造函数,并且属性被反射设置。只支持原始数据类型值(包括字符串)。

因此,定义插件的一般模式是:

配置插件

org.quartz.plugin.NAME.class = com.foo.MyPluginClass
org.quartz.plugin.NAME.propName = propValue
org.quartz.plugin.NAME.prop2Name = prop2Value

Quartz附带了几个插件,可以在org.quartz.plugins包(和子包)中找到。配置其中几个示例如下:

日志记录Triggers历史插件的示例配置

记录Triggers历史记录插件捕获Triggers事件(它也是一个触发器监听器),然后使用Jakarta Commons-Logging日志记录。请参阅类的JavaDoc以获取所有可能参数的列表。

日志记录Triggers历史插件的示例配置

org.quartz.plugin.triggHistory.class = \
  org.quartz.plugins.history.LoggingTriggerHistoryPlugin
org.quartz.plugin.triggHistory.triggerFiredMessage = \
  Trigger \{1\}.\{0\} fired job \{6\}.\{5\} at: \{4, date, HH:mm:ss MM/dd/yyyy}
org.quartz.plugin.triggHistory.triggerCompleteMessage = \
  Trigger \{1\}.\{0\} completed firing job \{6\}.\{5\} at \{4, date, HH:mm:ss MM/dd/yyyy\}.

XML调度数据处理器插件的示例配置

作业初始化插件从XML文件读取一组作业和触发器,并在初始化期间将其添加到调度程序。它也可以删除退出的数据。有关更多详细信息,请参阅该类的JavaDoc。

JobInitializationPlugin的示例配置

org.quartz.plugin.jobInitializer.class = \
  org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = \
  data/my_job_data.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true

文件的XML模式定义可以在这里找到:

http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd

关闭挂钩插件的示例配置

shutdown-hook插件捕获JVM终止的事件,并在调度程序上调用shutdown。

ShutdownHookPlugin的示例配置

org.quartz.plugin.shutdownhook.class = \
  org.quartz.plugins.management.ShutdownHookPlugin
org.quartz.plugin.shutdownhook.cleanShutdown = true