转载地址:http://www.oschina.net/code/snippet_117958_4699
在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> |