The commons-dbcp package relies on code in the commons-pool package to provide the underlying object pool mechanisms that it utilizes.
Applications can use the commons-dbcp component directly or through the existing interface of their container / supporting framework. For example the Tomcat servlet container presents a DBCP DataSource as a JNDI Datasource. James (Java Apache Mail Enterprise Server) has integrated DBCP into the Avalon framework. A Avalon-style datasource is created by wrapping the DBCP implementation. The pooling logic of DBCP and the configuration found in Avalon's excalibur code is what was needed to create an integrated reliable DataSource.
[ read more ]