您的位置:首页 > 编程语言 > Java开发

spring配置连接数据库

2013-07-05 23:28 495 查看
 对于不同的数据库来源, Spring提供了javax.sql.DataSource注入,更换数据库连接来源只需要在bean定义文件中修改配置,而不需要修改任何一行程序。

对于不同的项目,应用程序可能使用不同的数据来源,例如纯使用jdbc、通过连接池或者JNDI等。

1、纯JDBC方式:

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>

<bean id="dataSourceBean" class="Test201307.DataSourceBean">
<constructor-arg>
<ref bean="dataSource" />
</constructor-arg>
</bean>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value>
</property>
<property name="username">
<value>zen</value>
</property>
<property name="password">
<value>sa</value>
</property>
</bean>

</beans>


2、通过连接池:如DBCP数据库连接池

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

<bean id="dataSourceBean" class="Test201307.DataSourceBean">
<constructor-arg>
<ref bean="dataSource" />
</constructor-arg>
</bean>

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value>
</property>
<property name="username">
<value>zen</value>
</property>
<property name="password">
<value>sa</value>
</property>
</bean>

</beans>

注明:使用DBCP数据来源,需要在CLASSPATH中加入commons-dbcp.jar、commons-pool.jar和commons-collections.jar包。

3、通过JNDI配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
....
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>jdbc/orcl</value>
</property>
</bean>
</beans>


需要加入包:spring-context.jar,ojdbc14.jar

在web项目中配置jndi名称,在web应用的META-INF目录下:配置context.xml

<Context>

<Resource name="jdbc/orcl" auth="Container" type="javax.sql.DataSource" 

username="zen" password="sa" driverClassName="oracle.jdbc.driver.OracleDriver"

url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"

maxActive="50" maxIdle="30" maxWait="6000"

/>

</Context>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: