日期:2014-05-16  浏览次数:20344 次

hibernate C3P0数据源 连接oracle数据库
<?xml version="1.0" encoding="UTF-8"?>        
<beans xmlns="http://www.springframework.org/schema/beans"        
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">        
             
   <!-- 定义数据源Bean,使用C3P0数据源实现 -->     
    <bean id="dataSource"     
        class="com.mchange.v2.c3p0.ComboPooledDataSource"     
        destroy-method="close">     
        <!-- 指定连接数据库的驱动 -->     
        <property name="driverClass"     
            value="oracle.jdbc.driver.OracleDriver" />     
        <!-- 指定连接数据库的URL -->     
        <property name="jdbcUrl"     
            value="jdbc:oracle:thin:@192.168.1.102:1521:orcl" />     
        <!-- 指定连接数据库的用户名 -->     
        <property name="user" value="sys as sysdba" />     
        <!-- 指定连接数据库的密码 -->     
        <property name="password" value="wxp362387" />     
        <!-- 指定连接数据库连接池的最大连接数 -->     
        <property name="maxPoolSize" value="40" />     
        <!-- 指定连接数据库连接池的最小连接数 -->     
        <property name="minPoolSize" value="10" />     
        <!-- 指定连接数据库连接池的初始化连接数 -->     
        <property name="initialPoolSize" value="10" />     
        <!-- 指定连接数据库连接池的连接的最大空闲时间 -->     
        <property name="maxIdleTime" value="20" />     
    </bean>        
    <!--定义了Hibernate的SessionFactory -->        
    <bean id="sessionFactory"        
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">        
        <property name="dataSource" ref="dataSource" />        
    <!-- 配置Hibernate的参数 -->     
  <property name="hibernateProperties">     
       <props>     
      <!-- 指定数据库的方言 -->     
            <prop key="hibernate.dialect">     
               org.hibernate.dialect.Oracle9Dialect      
          </prop>     
            <prop key="show_sql">true</prop>     
            <prop key="hibernate.hbm2ddl.auto">update</prop>     
            <!-- JDBC执行批量更新语句的大小 -->     
            <prop key="hibernate.jdbc.batch_size">20</prop>     
     </props>     
  </property>     
        <property name="mappingResources">        
            <!-- 映射的文件 -->        
            <list>        
                <value>XXXX.hbm.xml</value>        
                         
            </list>        
        </property>        
    </bean>        
    <!-- 配置事务管理器Bean,因为使用Hibernate持久化技术,故使用HibernateTranscationManager 事务管理器 -->        
    <bean id="transactionManager"        
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">        
        <!--为事务管理器注入SessionFactory 引用 -->        
        <property name="sessionFactory" ref="sessionFactory" />        
    </bean>        
    <!-- 配置事务拦截器Bean -->        
    <bean id="transactionInterceptor"        
        class="org.springframework.transaction.interceptor.TransactionInterceptor">        
        <!--  事务拦截器bean需要依赖注入一个事务管理器 -->        
        <property name="transactionManager" ref="transactionManager" />        
        <property name="transactionAttributes">        
            <!--  下面定义事务传播属性-->        
            <props>        
                <prop key="save*">PROPAGATION_REQUIRED</prop>        
                <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>        
                <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>        
                <prop key="*">PROPAGATION_REQUIRED</prop>        
            </props>        
        </property&g