在Spring框架中有如下3种获得DataSource对象的方法:
1.从JNDI获得DataSource.
2.从第三方的连接池获得DataSource.
3.使用DriverManagerDataSource获得DataSource.
[代码] JNDI方式
02 |
<bean id= "dataSource"
class = "org.springframework.jndi.JndiObjectFactoryBean" > |
03 |
<property name= "jndiName" > |
04 |
<value>java:comp/env/jcptDataSourceJNDI</value> |
07 |
jcptDataSourceJNDI是tomcat或者其他应用服务器配置的JNDI. |
10 |
修改tomcat目录conf/context.xml文件: |
11 |
<Resource name= "jcptDataSourceJNDI"
auth= "Container"
type=
"javax.sql.DataSource" |
12 |
maxActive= "100"
maxIdle= "30"
maxWait=
"10" username= "tysp" |
13 |
password= "12345678"
driverClassName= "oracle.jdbc.driver.OracleDriver" |
14 |
url= "jdbc:oracle:thin:@192.168.1.35:1521:orcl" />
|
17 |
Context context =
new InitialContext(); |
18 |
DataSource ds = (DataSource)context.lookup( "java:comp/env/jcptDataSourceJNDI" ); |
[代码] 使用DBCP连接池获取
01 |
要在Spring中使用DBCP连接池,需要引入commons-collections.jar、commons-dbcp.jar和commons-pool.jar。 |
03 |
<bean id= "dataSource"
class = "org.apache.commons.dbcp.BasicDataSource" > |
04 |
<property name= "driverClassName"
value= "oracle.jdbc.driver.OracleDriver" ></property> |
05 |
<property name= "url"
value= "jdbc:oracle:thin:@192.168.1.35:1521:orcl" ></property> |
06 |
<property name= "username"
value= "or_meal" ></property> |
07 |
<property name= "password"
value= "or_meal" ></property> |
08 |
<property name= "maxActive"
value= "100" ></property> |
09 |
<property name= "maxIdle"
value= "30" ></property> |
10 |
<property name= "maxWait"
value= "10" ></property> |
11 |
<property name= "defaultAutoCommit"
value= "false" ></property> |
14 |
<bean id= "sessionFactory" |
15 |
class = "org.springframework.orm.hibernate3.LocalSessionFactoryBean" > |
16 |
<property name= "dataSource" > |
17 |
<ref bean= "dataSource"
/> |
20 |
<property name= "hibernateProperties" > |
22 |
<prop key= "hibernate.dialect" >org.hibernate.dialect.Oracle9Dialect |
24 |
<prop key= "show_sql" > true </prop> |
25 |
<prop key= "format_sql" > true </prop> |
28 |
<property name= "mappingResources" > |
[代码] 使用DriverManagerDataSource
02 |
class = "org.springframework.jdbc.datasource.DriverManagerDataSource" > |
03 |
<property name= "driverClassName" > |
04 |
<value>oracle.jdbc.driver.OracleDriver |
08 |
<value>jdbc:oracle:thin: @192 .168. 1.35 :orcl |
11 |
<property name= "username" > |
12 |
<value>or_meal</value> |
14 |
<property name= "password" > |
15 |
<value>or_meal</value> |