基本数据源和池化数据源之间的区别

org.apache.commons.dbcp BasicDatasource 和 PoolingDataSoure 之间有什么区别?两者都支持连接池吗?何时使用它们中的每一个?


答案 1

正如javadoc所说,BasicDataSource是满足基本需求的一站式购物。它具有所有必要的功能。它在内部创建一个可池数据源和一个对象池。

PoolingDataSource 使用提供的 ObjectPool 实现 DataSource 接口。PoolingDatasource负责与连接有关的任何事情(转换,检查有效性,设置属性等),ObjectPool负责保存和计算这个任何类型的对象。

所以我应该使用BasicDataSource。如果你需要一些特别的东西,也许可以将PoolingDatasource与另一个ObjectPool的实现一起使用。但我认为这将是一个罕见的情况。


答案 2

推荐