Tomcat数据源恢复

时间:2017-09-05 11:21:53

标签: tomcat datasource

我想设置我的tomcat数据源,以便在数据库关闭并重新启动时恢复连接。 我在工作中测试这个问题(繁文缛节等)

有没有人知道tomcat中的以下数据源设置是否会自行恢复?

<add:Resource auth="Container"
driverClassName="oracle.jdbc.OracleDriver"
initialSize="5"
logAbandoned="false"
maxActive="100"
maxWait="180000"
minEvictableIdleTimeMillis="240000"
minIdle="5"
name="jdbc/myDB"
password="${myDB.password}"
url="${myDB.url}"
username="${myDB.username}"    
removeAbandoned="true"
removeAbandonedTimeout="60"
timeBetweenEvictionRunsMillis="10000"
type="javax.sql.DataSource"
validationQuery="select 1 from dual"
validationQueryTimeout="10"
validationInterval="10000" 
testOnBorrow="true"
testWhileIdle="true"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" />

由于 达明

1 个答案:

答案 0 :(得分:1)

我认为只有validationQueryvalidationQueryTimeout以及您已经使用过的validatorClassName才能完成这项工作。

这是tomcat检查数据库运行状况的最准确方法  与池对象关联的连接。

或者,您可以使用validationInterval

注意:您可能希望使用较低的值:validationQueryTimeout,{{1}},以便从断开的连接中更快地恢复。

请在此处查看所有选项:https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html