我已经按照这里的教程:http://www.liquid-reality.de/display/liquid/2012/01/13/Apache+Karaf+Tutorial+Part+6+-+Database+Access解释了如何使用Ops4J JDBC包装的apache DBCP在Karaf中设置数据源。
您可以使用“pool”属性前缀在底层对象池上设置属性,但我无法看到设置“validationQuery”属性,可能是因为这不是底层池的属性,而是BasicDataSource本身。我需要设置此属性,因为我在开发服务器上遇到连接超时,这有时会破坏我们的夜间集成测试。
可以这样做吗?
答案 0 :(得分:2)
我找到了一种独立于BasicDataSource设置验证查询的方法。有org.apache.commons.dbcp2.PoolableConnectionFactory.setValidationQuery。
我们在pax jdbc中内部使用PoolableManagedConnectionFactory。目前无法设置此属性,但我添加了一个jira问题来添加此选项:https://ops4j1.jira.com/browse/PAXJDBC-70