有人可以解释如何使用dbcp准确准备连接池吗?(如果可能,请使用一些示例代码).我已经想出如何打开它 - 将KeyedObjectPoolFactory传递给PoolableConnectionFactory.但是之后应该如何定义具体的准备陈述呢?现在我只使用PoolingDataSource从池中获取连接.如何使用池中的预准备语句?
那么谈论从池中获取连接与获得"非池化"连接,你的代码有任何改变:)?我打赌你没有.与准备好的陈述相同.您的代码不应该更改.因此,没有有用的代码示例.
您应该阅读JDBC数据源实现的文档,并了解开发人员对池化的看法.没有其他可靠信息来源.
从这里:该组件还具有池PreparedStatements的能力.启用后,将为每个Connection创建一个语句池,并且将汇集由以下方法之一创建的PreparedStatements:
* public PreparedStatement prepareStatement(String sql) * public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
所以,你只是继续使用prepareStatement()调用,你的dbcp理论上会处理池(即如果你试图创建"select*from users u where u.name like:id",它会尝试查找这个语句在游泳池第一)