Quartz Job Scheduling Framework[翻译]附录 A. Quartz 配置参考 (第六部分)

十. 配置 Quartz 数据源

如果你在使用 JDBC JobStore,就需定义要用到的数据源。而如果使用的是 JobStoreCMT,你实际上需要定义两个数据源。数据源可由三种方式来配置:

·在 quartz.properties 文件中指定连接池属性,这样 Quartz 能亲自创建数据源。

·指定应用服务器管理的数据源所在 JNDI 的位置,Quartz 直接使用它。

·还可使用自定义的 org.quartz.utils.ConnectionProvider 实现类。

每一个你定义的 datasource 都必须给予一个名称,并且你为它们配置的属性也必须包含这个名称。datasourceNAME 可以是你任何想要的;它没有特别的意思,只是用来指定给 JDBC JobStore 时标识 datasource

当使用 quartz.properties 来定义连接池的所有属性来配置 datasource 时,表 A.6 是可用的属性。

表 A.6. 配置 Quartz Datasource 的属性
名称 必须 类型 默认值
org.quartz.dataSource.NAME.driver String null
org.quartz.dataSource.NAME.URL String null
org.quartz.dataSource.NAME.user String ""
org.quartz.dataSource.NAME.password String ""
org.quartz.dataSource.NAME.maxConnections Integer 10
org.quartz.dataSource.NAME.validationQuery String null

·org.quartz.dataSource.NAME.driver

必须是你的数据库的 JDBC 驱动的 Java 类名。

·org.quartz.dataSource.NAME.URL

这是连接到你的数据库的 URL(主机、端口等)

·org.quartz.dataSource.NAME.user

用来连接到你的数据库的用户名。

·org.quartz.dataSource.NAME.password

用来连接到你的数据库的密码。

·org.quartz.dataSource.NAME.maxConnections

DataSource 创建的连接池中的最大连接数。

·org.quartz.dataSource.NAME.validationQuery

这是一个可选的 SQL 查询语句,DataSource 用它来检测失败/无用的连接。例如,Oracle 用户可选用 select table_name from user_tables,这个查询永不会失败,除非连接实际是无用的。

当你使用定义在应用服务器中的 Datasource 时,可用的属性如表 A.7 所列。

表 A.7. 配置 Quartz 使用应用服务器中中 Datasource 时的属性
名称 必须 类型 默认值
org.quartz.dataSource.NAME.jndiURL String null
org.quartz.dataSource.NAME.java.naming.factory.initial String null
org.quartz.dataSource.NAME.java.naming.provider.url String null
org.quartz.dataSource.NAME.java.naming.security.principal String null
org.quartz.dataSource.NAME.java.naming.security.credentials String null

·org.quartz.dataSource.NAME.jndiURL

这是受容器管理的 DataSource 的 JNDI URL。

·org.quartz.dataSource.NAME.java.naming.factory.initial

可选,你希望使用的 JNDI InitialContextFactory 类名。

·org.quartz.dataSource.NAME.java.naming.provider.url

可选,用来连接到 JNDI 上下文的 URL。

·org.quartz.dataSource.NAME.java.naming.security.principal

可选,连接到 JNDI 上下文的用户名。

·org.quartz.dataSource.NAME.java.naming.security.credentials

可选,连接到 JNDI 上下文的用户凭证。

十一. 使用自定义的 ConnectionProvider 配置数据源

自 Quartz 1.5.1 开始,你可以创建一个自定义的 ConnectionProvider,并在属性文件中提供类名来配置 Quartz 使用它。

org.quartz.dataSource.myConnProvider.connectionProvider.class = com.foo.MyConnectionProvider

初始化该类后,Quartz 就能自动以 Bean 风格来设置实例的属性。

org.quartz.dataSource.myConnProvider.someStringProperty = someValue
org.quartz.dataSource.myConnProvider.someIntProperty = 5

本文链接 https://yanbin.blog/quartz-job-scheduling-framework-appendix-6/, 来自 隔叶黄莺 Yanbin Blog

[版权声明] Creative Commons License 本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments