1. 使用org.springframework.jdbc.datasource.DriverManagerDriver
说明:DriverManagerDriver建立连接是只要有连接,就建立一个connection。根本没有连接池的作用.
1 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 2 <property name="driverClassName" value="${jdbc.driverClassName}" /> 3 <property name="url" value="${jdbc.url}" /> 4 <property name="username" value="${jdbc.username}" /> 5 <property name="password" value="${jdbc.password}" /> 6</bean>
2. 使用org.apache.commons.dbcp.BasicDataSource
说明:推荐此方式。使用了连接池技术。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 2 <property name="driverClassName"> 3 <value>oracle.jdbc.driver.OracleDriver</value> 4 </property> 5 <property name="url"> 6 <value>jdbc:oracle:thin:@localhost:1521:orcl</value> 7 </property> 8 <property name="username"> 9 <value>test</value> 10 </property> 11 <property name="password"> 12 <value>test</value> 13 </property> 14 <property name="maxActive"> 15 <value>255</value> 16 </property> 17 <property name="maxIdle"> 18 <value>2</value> 19 </property> 20 <property name="maxWait"> 21 <value>120000</value> 22 </property> 23 </bean>
3.使用org.springframework.jndi.JndiObjectFactoryBean
说明:JndiObjectFactoryBean能够通过jndi获取DataSource
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 2 <property name="jndiName"><value>Java:comp/env/jdbc/roseindiaDB_local</value></property> 3 </bean>
总结:3种方式中的第一种没有使用连接池,故少在项目中用到,第三种方式需要在web server中配置数据源,不方便于部署,本人推荐使用每二种方式进行数据源的配置。