您的位置:首页 > 数据库 > Oracle

hibernate C3P0数据源 连接oracle数据库

2009-03-27 11:59 309 查看
<?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>
</bean>

<!-- 定义BeanNameAutoProxyCreator 后处理器 ,BeanNameAutoProxyCreator为名字匹配字符串或者通配符的bean自动创建AOP代理。-->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<!--  指定对满足哪些bean name的bean自动生成业务代理 -->
<property name="beanNames">
<!--  下面是所有需要自动创建事务代理的bean-->
<list>
<value>*Dao</value>
<value>*Imp</value>

</list>
<!--  此处可增加其他需要自动创建事务代理的bean-->
</property>
<!--  下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
<property name="interceptorNames">
<list>
<!-- 此处可增加其他新的Interceptor -->
<value>transactionInterceptor</value>
</list>
</property>
</bean>

<!-- 配置系统DAO组件 -->
<bean id="xxxxDao" class="org.boss.dao.XxxxDaoHibernate">
<!-- 依赖注入DAO组件所必需的SessionFactory引用 -->
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 配置系统的业务逻辑组件 -->
<bean id="xxxxImp" class="org.boss.service. XxxxManagerImp">
<property name="xxxxDao" ref="xxxxDao"></property>
</bean>
</beans>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: