Quartz Job Scheduling Framework[翻译]附录 A. Quartz 配置参考 (第六部分)
十. 配置 Quartz 数据源
如果你在使用 JDBC JobStore,就需定义要用到的数据源。而如果使用的是 JobStoreCMT,你实际上需要定义两个数据源。数据源可由三种方式来配置:
·在 quartz.properties 文件中指定连接池属性,这样 Quartz 能亲自创建数据源。
·指定应用服务器管理的数据源所在 JNDI 的位置,Quartz 直接使用它。
·还可使用自定义的 org.quartz.utils.ConnectionProvider 实现类。
每一个你定义的 datasource 都必须给予一个名称,并且你为它们配置的属性也必须包含这个名称。datasource 的 NAME 可以是你任何想要的;它没有特别的意思,只是用来指定给 JDBC JobStore 时标识 datasource。
当使用 quartz.properties 来定义连接池的所有属性来配置 datasource 时,表 A.6 是可用的属性。
·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 所列。
·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's Blog
[版权声明]
本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。
如果你在使用 JDBC JobStore,就需定义要用到的数据源。而如果使用的是 JobStoreCMT,你实际上需要定义两个数据源。数据源可由三种方式来配置:
·在 quartz.properties 文件中指定连接池属性,这样 Quartz 能亲自创建数据源。
·指定应用服务器管理的数据源所在 JNDI 的位置,Quartz 直接使用它。
·还可使用自定义的 org.quartz.utils.ConnectionProvider 实现类。
每一个你定义的 datasource 都必须给予一个名称,并且你为它们配置的属性也必须包含这个名称。datasource 的 NAME 可以是你任何想要的;它没有特别的意思,只是用来指定给 JDBC JobStore 时标识 datasource。
当使用 quartz.properties 来定义连接池的所有属性来配置 datasource 时,表 A.6 是可用的属性。
| 名称 | 必须 | 类型 | 默认值 | |
| 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 |
必须是你的数据库的 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 所列。
| 名称 | 必须 | 类型 | 默认值 | |
| 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 |
这是受容器管理的 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's Blog
[版权声明]
本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。