Spring中配置数据源的几种方法
Spring中配置数据源的几种方法
方法一(属性文件配置):
spring配置文件:
<beanid="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<propertyname="location"value="/WEB-INF/jdbc.properties"/>
</bean>
<beanid="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<propertyname="driverClassName"
value="${jdbc.driverClassName}"/>
<propertyname="url"value="${jdbc.url}"/>
<propertyname="username"value="${jdbc.username}"/>
<propertyname="password"value="${jdbc.password}"/>
</bean>
属性文件:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/testdb
jdbc.url=root
jdbc.password=mysqladmin
方法二(最常见的配置):
spring配置文件:
//这里用到的数据源类在commons-pool.jar包中
<beanid="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<propertyname="driverClassName"
value="org.gjt.mm.mysql.Driver">
</property>
<propertyname="url"
value="jdbc:mysql://localhost:3306/testdb">
</property>
<propertyname="username"value="root"></property>
<propertyname="password"value="mysqladmin"></property>
</bean>
方法三(JNDI配置):
spring配置文件
//这里的jndi数据源必须要在应用服务器中配置好了
//红色部分为配置的JNDI的名称
<beanid="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<propertyname="jndiName">
<value>java:comp/env/jdbc/mysql</value>
</property>
</bean>
这里的应用服务器就以Tomcat为例
首先找到conf文件夹下的server.xml在</Host>标签前加入以下一段代码
//path指的是把工程部署到tomcat中后对应在浏览器中的地址如:http://localhost:8080/mshop
//docBase指的是你工程下的webRoot文件夹所在的地理位置
<Contextpath="/mshop"docBase="E:\Shop\WebRoot"reloadable="true">
<Resourcename="jdbc/mysql"auth="Container"type="javax.sql.DataSource"
maxActive="100"maxIdle="30"maxWait="10000"
username="root"password="mysqladmin"driverClassname="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost:3306/testdb"/>
</Context>