BasicDatasource和PoolingDatasource之间的区别

时间:2011-09-21 07:58:17

标签: java connection-pooling apache-commons-dbcp

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

1 个答案:

答案 0 :(得分:40)

正如javadoc所说,

BasicDataSource 是基本需求的一站式购物。它有所有必要的。它在内部创建了PoolableDataSource和ObjectPool。

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

所以我应该使用BasicDataSource 。如果您需要特殊的东西,可以使用PoolingDatasource和ObjectPool的另一个实现。但我认为这是一种罕见的情况。