【spring配置】——spring配置資料來源
阿新 • • 發佈:2019-02-20
spring整合資料來源,資料來源交由Spring管理後,可以方便的配置事務,配置hibernate或者mybatis等。
常用的配置方式有三種:
1.dbcp
2.c3p0
3.jndi
配置檔案:
如果使用jndi資料來源,則需要在weblogic控制檯中配置資料來源。<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- *********************** Spring整合資料來源(Oracle) 第一種:dbcp資料來源 第二種:c3p0資料來源 第三種:jndi資料來源 *********************** --> <!-- dbcp資料來源 --> <!-- destory-method是保證spring容器關閉時,資料來源能夠正常工作--> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:XE" /> <property name="username" value="test" /> <property name="password" value="test"/> </bean> <!-- c3p0資料來源 --> <bean id="dataSource1" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"/> <property name="jdbcUrl" value="jdbc:oracle:thin:@localhost:1521:XE"/> <property name="user" value="test"/> <property name="password" value="test"/> </bean> <!-- jndi資料來源(需要在容器tomcat或者weblogic中配置對應資料來源) --> <bean id="dataSource3" class="org.springframework.jndi.JndiObjectFactoryBean"> <!--weblogic <property name="jndiName" value="jdbc/pool" /> --> <!--tomcat--> <property name="jndiName" value="java:comp/env/jdbc/pool"> </bean> </beans>
如果使用tomcat伺服器,需要在tomcat的配置檔案context.xml中:
<Resource name="jdbc/pool" auth="Container" type="javax.sql.DataSource" username="test" password="test" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:XE" maxActive="100" maxIdle="30" maxWait="10000" />