<?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: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/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 -->
<context:component-scan base- package = "cn.itcast.oa" ></context:component-scan>
<!-- 导入外部的properties配置文件 -->
<context:property-placeholder location= "classpath:jdbc.properties" />
<!-- 配置数据库连接池 -->
<bean id= "dataSource" class = "com.mchange.v2.c3p0.ComboPooledDataSource" >
<!-- =========== 数据库连接信息 =========== -->
<property name= "jdbcUrl" value= "${jdbcUrl}" ></property>
<property name= "driverClass" value= "${driverClass}" ></property>
<property name= "user" value= "${username}" ></property>
<property name= "password" value= "${password}" ></property>
<!-- =========== 连接池的管理配置 =========== -->
<!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
<property name= "initialPoolSize" value= "3" ></property>
<!--连接池中保留的最小连接数。Default: 3 -->
<property name= "minPoolSize" value= "3" ></property>
<!--连接池中保留的最大连接数。Default: 15 -->
<property name= "maxPoolSize" value= "5" ></property>
<!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
<property name= "acquireIncrement" value= "3" ></property>
<!--
控制数据源内加载的PreparedStatements数量。如果maxStatements与maxStatementsPerConnection均为 0 ,则缓存被关闭。Default:
0
-->
<property name= "maxStatements" value= "8" ></property>
<!--
maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0
-->
<property name= "maxStatementsPerConnection" value= "5" ></property>
<!--最大空闲时间, 1800 秒内未使用则连接被丢弃。若为 0 则永不丢弃。Default: 0 -->
<property name= "maxIdleTime" value= "1800" ></property>
</bean>
<!-- 配置SessionFactory -->
<bean id= "sessionFactory"
class = "org.springframework.orm.hibernate3.LocalSessionFactoryBean" >
<property name= "dataSource" ref= "dataSource" ></property>
<property name= "configLocation" value= "classpath:hibernate.cfg.xml" ></property>
</bean>
<!-- 配置声明式的事务管理(采用基于注解的方式) -->
<bean id= "txManager" class = "org.springframework.orm.hibernate3.HibernateTransactionManager" >
<property name= "sessionFactory" ref= "sessionFactory" ></property>
</bean>
<tx:annotation-driven transaction-manager= "txManager" />
<!-- 配置JBPM的ProcessEngine,注意配置文件的路径要写正确! -->
<bean id= "springHelper" class = "org.jbpm.pvm.internal.processengine.SpringHelper" >
<property name= "jbpmCfg" value= "jbpm.cfg.xml" ></property>
</bean>
<bean id= "processEngine" factory-bean= "springHelper" factory-method= "createProcessEngine" />
</beans>
|