<?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-2.5.xsd">
<!--定义C3PO连接池的数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<!--定义数据库的JDBC驱动 -->
<property name="driverClass">
<value>com.mysql.jdbc.Driver</value>
</property>
<!-- 定义数据库所用的URL -->
<property name="jdbcUrl">
<value>jdbc:mysql://localhost:3306/db_manager</value>
</property>
<!-- 定义数据库用户-->
<property name="user">
<value>root</value>
</property>
<!-- 定义数据库密码-->
<property name="password">
<value>1234</value>
</property>
<!-- 定义数据库连接池最大连接数-->
<property name="maxPoolSize">
<value>30</value>
</property>
<!-- 定义数据库连接池最小连接数-->
<property name="minPoolSize">
<value>3</value>
</property>
<!-- 定义数据库连接池初始化连接数目-->
<property name="initialPoolSize">
<value>3</value>
</property>
<!-- 定义数据库最大闲置时间,以秒为单位-->
<!--
<property name="maxldle">
<value>30</value>
</property>
-->
<!-- 定义最大等待时间 -->
<!--
<property name="maxWait">
<value>1800</value>
</property>
-->
</bean>
<!-- 定义Hibernate的SessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 注册Hibernate的ORM映射文件 -->
<property name="dataSource" ref="dataSource"/>
<property name="mappingResources">
<list>
<value>com/eportal/ORM/category.hbm.xml</value>
</list>
</property>
<!-- 设置Hibernate的相关属性 -->
<property name="hibernateProperties">
<props >
<prop key="hibernate.dailect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="show_sql">true</prop>
<prop key="hibernate.jdbc.batch_size">100</prop>
</props>
</property>
</bean>
<!--定义Hibernate的事务管理器HibernateTransactionManager -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!--定义Spring的事务拦截器TransactionInterceptor -->
<bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager" ref="transactionManager"/>
<!-- 定义事务需要拦截的事务方法以及采用的事务采用的控制类型 -->
<property name="transactionAttributes">
<props>
<prop key="load*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="browse*">PROPAGATION_REQUIRED,readOnly</prop>