Attribute |
Description |
defaultAutoCommit |
(boolean)连接池创建的连接的默认的auto-comit状态,未设置, 默认的是 JDBC driver default |
defaultReadOnly |
(boolean)连接池创建的连接的默认的read-only 状态。如果没有设置,setReadOnly方法不会被调用。(有些驱动不支持只读模式,例如:Informix) |
defaultTransactionIsolation |
(String)连接池创建的连接的默认transactionisolation状态。下面列表当中的某一个: ( 参考javadoc)
- NONE
- READ_COMMITTED
- READ_UNCOMMITTED
- REPEATABLE_READ
- SERIALIZABLE
如果没有设置,该方法不会被调用,默认值driver default。 |
defaultCatalog |
(String) 连接池创建的连接的默认的catalog。默认值:driver default |
driverClassName |
(String)使用的JDBC 驱动的完整有效的java 类名。驱动必须从类加载器中可访问 |
username |
(String)传递连接用户名给JDBC驱动程序建立连接。 注意,方法DataSource.getConnection(用户名、密码)默认情况下不会使用凭证传递到方法,但将使用的配置。SeealternateUsernameAllowed属性的更多细节。 |
password |
(String) 传递连接密码给JDBC驱动程序建立连接。 注意,方法DataSource.getConnection(用户名、密码)默认情况下不会使用凭证传递到方法,但将使用的配置。SeealternateUsernameAllowed属性的更多细节。 |
maxActive |
(int) 最大活动连接数:连接池在同一时间能够分配的最大活动连接的数量,如果设置成非正数则表示不限制。默认为100。 |
maxIdle |
(int)最大空闲连接数:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放。 如果设置为负数表示不限制 。 如果启用,将定期检查限制连接。 如果空闲时间超过minEvictableIdleTimeMillis则释放连接。(参考testWhileIdle)默认值:100。 |
minIdle |
(int)最小空闲连接数:连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为0 则不创建。如果连接验证失败将缩小这个值。 (参考testWhileIdle )默认值来自initialSize:10。 |
initialSize |
(int)初始化连接:连接池启动时创建的初始化连接数量。默认值:10。1.2 版本后支持 |
maxWait |
(int) 最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间数(单位毫秒)。超过时间则抛出异常,如果设置为-1 表示无限等待。 |
testOnBorrow |
(boolean) 指明是否在从池中取出连接前进行检验, 如果检验失败, 则从池中去除连接并尝试取出另一个。注意: 设置为true 后如果要生效,validationQuery 参数必须设置为非空字符串 。参考validationInterval以获得更有效的验证。默认值是false |
testWhileIdle |
(boolean)指明连接是否被空闲连接回收器( 如果有) 进行检验。如果检测失败,则连接将被从池中去除。注意:设置为true 后如果要生效,validationQuery 参数必须设置为非空字符串。 |
testOnConnect |
(boolean) 当第一个连接被创建时,是否会被验证。如果一个对象没有通过验证,它将抛出SQLException。注:如果设置为True, initsql validationQuery或validatorclassname参数必须设置为非空字符串。默认值是错误的 |
testOnReturn |
(boolean) 指明是否在归还到池中前进行检验注:设置为true 后如果要生效,validatorclassname、 validationQuery参数必须设置为非空字符串。默认值是false。 |
validationQuery |
(String)在将连接返回给调用者之前,SQL 查询,用来验证从连接池取出的连接。如果指定,则查询必须是一个SQL SELECT 并且必须返回至少一行记录。查询不必返回记录,但这样将不能抛出SQL异常。默认值是null。示例值:SELECT 1(mysql), select 1 from dual(oracle), SELECT 1(MS Sql Server) |
validationQueryTimeout |
(int) 连接验证查询失败的超时秒数。这是通过调用java.sql.Statement.setQueryTimeout thevalidationQuery执行的(秒)。连接池本身不超时的查询,它仍然是JDBC驱动程序来执行查询超时。一个小于或等于零的值将禁用这个特性。默认值是1。 |
validatorClassName |
(String)一个类实现org.apache.tomcat.jdbc.pool.Validator这个接口,并提供一个不带参数的构造函数(可能是隐式的)的类名。如果具体,类将被用于创建一个验证器实例然后代替任何验证查询来验证连接。默认值是null。一个例子是com.mycompany.projectSimpleValidator。 |
timeBetweenEvictionRunsMillis |
(int)在空闲连接回收器线程运行期间休眠的时间值, 以毫秒为单位。这个值不应该低于1s。它规定我们检查空闲、放弃的连接的频率,和验证空闲连接的频率。如果设置为非正数, 则不运行空闲连接回收器线程。默认值是5000(5s)。 |
numTestsPerEvictionRun |
(int) Property not used in tomcat-jdbc-pool. |
minEvictableIdleTimeMillis |
(int) 连接池中,连接的可空闲的时间,超过就被收回。单位毫秒。默认值是60000(60 s)。 |
accessToUnderlyingConnectionAllowed |
(boolean) Property not used. |
removeAbandoned |
(boolean)标记是否删除泄露的连接,如果他们超过了removeAbandonedTimout 的限制。如果设置为true,连接被认为是被泄露并且可以被删除, 如果空闲时间超过removeAbandonedTimeout。 设置为true 可以为写法糟糕的没有关闭连接的程序修复数据库连接。参考logAbandoned。默认值为false。 |
removeAbandonedTimeout |
(int) 泄露的连接可以被删除的超时值。单位秒,应设置为应用中查询执行执行时间最长的时间。 |
logAbandoned |
(boolean) 标记当Statement 或连接被泄露时是否打印程序的stack traces 日志。为每一连接进行日志记录增加消耗,因为堆栈跟踪的生成。默认为false。 |
connectionProperties |
(String)当建立新的连接时连接属性将被发送到我们的JDBC驱动程序。格式的字符串必须[propertyName =属性;]。注意,“用户”和“密码”属性将显式传递,所以他们不需要包括在这里。默认值是null。 |
poolPreparedStatements |
(boolean) Property not used. |
maxOpenPreparedStatements |
(int) Property not used. |