Following up from the Spring MySQL JdbcDaoSupport demonstration example, we augment this to add DBCP support in our application.
All we have to do is first Add the DBCP dependency in the POM file:
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
and then add the DBCP related datasource in the datasource bean config file:
<bean id="dataSourceDBCP"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="initialSize" value="${dbcp.initialSize}" />
<property name="maxActive" value="${dbcp.maxActive}" />
</bean>
In this bean we setup our database connection pool to have an initial size of 5 db connection that can be increased up to 10 connections.
Then, thanks to the dependency injection magic, all we have to do is change the name of the dataSource bean to the DAO bean config file:
<bean id="personSupportDao" class="com.dimitrisli.springMySQL.dao.PersonDaoSupportImpl" > <property name="dataSource" ref="dataSourceDBCP"></property> </bean> The source code can be found <a href="https://github.com/dimitrisli/SpringJdbcSupportMySQL">in this Github repository</a>.