前言:今天接触新项目发现用的是JNDI配置数据源,用度娘倒腾了一会也没弄好,只好用平常用的方法,结果发现BasicDataSource和DriverManagerDataSource也是不同的,所以记录一下。
1.使用org.apache.commons.dbcp.BasicDataSource
<!-- 获取数据源 -->
<!-- 此方法使用了连接池技术-->
<bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>${db.driverClass}</value> </property> <property name="url"> <value>${db.url}</value> </property> <property name="usesrname"> <value>${db.username}</value> </property> <property name="password"> <value>${db.password}</value> </property> </bean>
2.使用org.springframework.jdbc.datasource.DriverManagerDataSource
<!-- 配置数据源 -->
<!-- 没使用连接池技术-->
<bean id="eRuleDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>${db.driverClass}</value> </property> <property name="url"> <value>${db.url}</value> </property> <property name="usesrname"> <value>${db.username}</value> </property> <property name="password"> <value>${db.password}</value> </property> </bean>
3.使用org.springframework.jndi.JndiObjectFactoryBean
<bean id="eRuleDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>java:comp/env/jdbc/eRuleDataSource</value> </property> </bean>
在使用JNDI配置数据源比较复杂,还有其地方需要配置,部署服务器不同,也需要进行一些不同的配置。所以等研究清楚了再来完善。