Java 如何配置DBCP PoolableConnectionFactory?
以下是我使用DBCP 1.4连接工厂创建数据源的方法:Java 如何配置DBCP PoolableConnectionFactory?,java,jdbc,apache-commons-dbcp,Java,Jdbc,Apache Commons Dbcp,以下是我使用DBCP 1.4连接工厂创建数据源的方法: PoolableConnectionFactory factory = new PoolableConnectionFactory( new DriverManagerConnectionFactory("jdbc:h2:mem:db", "", ""), new GenericObjectPool(null), null, "SELECT 1", false, true ); DataSource src = ne
PoolableConnectionFactory factory = new PoolableConnectionFactory(
new DriverManagerConnectionFactory("jdbc:h2:mem:db", "", ""),
new GenericObjectPool(null),
null,
"SELECT 1",
false,
true
);
DataSource src = new PoolingDataSource(factory.getPool());
工作正常,但我不知道如何配置它,这里列出了参数:。例如,我需要将
testWhileIdle
设置为true
基本CDATA源具有这些属性,您可以切换到使用它吗?setDriverClassName似乎不起作用。看看我的问题:你似乎是这个问题的专家,你能提供一些见解吗?
Properties props = new Properties();
props.put("validationQuery", "SELECT 1 from dual;");
props.put("testWhileIdle","true");
final ObjectPool connectionPool = new GenericObjectPool(null);
final ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(connectUri, props);
new PoolableConnectionFactory(connectionFactory, connectionPool, null, null, false, true);
final PoolingDataSource dataSource = new PoolingDataSource(connectionPool);
Properties props = new Properties();
props.put("validationQuery", "SELECT 1 from dual;");
props.put("testWhileIdle","true");
final ObjectPool connectionPool = new GenericObjectPool(null);
final ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(connectUri, props);
new PoolableConnectionFactory(connectionFactory, connectionPool, null, null, false, true);
final PoolingDataSource dataSource = new PoolingDataSource(connectionPool);