Spring配置数据源四种方式

来源:互联网 发布:递归算法的应用 编辑:程序博客网 时间:2024/06/05 21:04

使用spring框架时,平常你都使用那种数据源呢?本篇博客将分享spring常用的四种配置数据源方式。

以下使用Oracle10g版本作为例子。

第一种:使用spring自带的DriverManagerDataSource

配置文件如下:

<?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:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <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:@192.168.24.102:1521:sms</value> </property> <property name="username"> <value>test</value> </property> <property name="password"> <value>test</value> </property> </bean> </beans> 


 

 

第二种:DBCP数据源。

需要下载的jar包:commons-dbcp.jarcommons-pool.jar

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:@192.168.24.102:1521:sms" /> <property name="username" value="test"/> <property name="password" value="test" /> </bean>   <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:@192.168.24.102:1521:sms" />               <property name="username" value="test"/>               <property name="password" value="test" />           </bean>

 

第三种:C3P0数据源。

配置文件中如下:

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="oracle.jdbc.driver.OracleDriver" /> <property name="jdbcUrl" value="jdbc:oracle:thin:@192.168.24.102:1521:sms " /> <property name="user" value="test" /> <property name="password" value="test" /> </bean>  <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"                    destroy-method="close">      <property name="driverClass" value="oracle.jdbc.driver.OracleDriver" /><property name="jdbcUrl" value="jdbc:oracle:thin:@192.168.24.102:1521:sms " /><property name="user" value="test" /><property name="password" value="test" />  </bean>

第四种:使用hibernate数据源

需要hiberante核心jar包。

目前三大框架较流行,spring一般与hiberante做搭档,数据库连接方式写在hiberante的配置文件中,在spring管理hibernate中的配置文件中,直接读取hibernate核心配置文件即可。

其中读取hibernate数据源与访问dao层的方式是配置在一块的。配置如下:

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocations"> <list> <value>classpath:com/config/hibernate.cfg.xml</value> </list> </property> <property name="mappingLocations"> <!-- 所有的实体类映射文件 --> <list> <value>classpath:com/hibernate/*.hbm.xml</value> </list> </property> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocations">   <list>      <value>classpath:com/config/hibernate.cfg.xml</value>   </list> </property> <property name="mappingLocations"> <!-- 所有的实体类映射文件 --><list><value>classpath:com/hibernate/*.hbm.xml</value></list></property>