<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:cache="http://www.springframework.org/schema/cache" xmlns:task="http://www.springframework.org/schema/task"
	xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
                           http://www.springframework.org/schema/tx      http://www.springframework.org/schema/tx/spring-tx-3.1.xsd 
                           http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd
                           http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">
	<!-- 采用注释的方式配置bean -->
	<context:annotation-config />
	<!-- 配置要扫描的包 -->
	<context:component-scan base-package="com.lyms.platform.biz.service" />
	<!-- 配置要扫描的包 -->
	<context:component-scan base-package="com.lyms.platform.biz.dal.impl" />
	<context:component-scan base-package="com.lyms.platform.permission.*" />
	<context:component-scan base-package="com.lymsh.mommybaby.earlydata.model.*" />
	<bean id="configProperties"
		class="org.springframework.beans.factory.config.PropertiesFactoryBean">
		<property name="locations">
			<list>
				<value>classpath:database.properties</value>
			</list>
		</property>
	</bean>
	<bean id="propertyConfigurer"
		class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
		<property name="properties" ref="configProperties" />
	</bean>
	<!-- 提示信息加载类 -->
	<bean class="com.lyms.platform.common.core.resolve.MessageResolver">
		<property name="messageFile" value="message.properties"/>
	</bean>
	<!-- 配置要扫描的包 -->
	<context:component-scan base-package="com.lyms.platform.data" />
	<!-- DataSource configuration 妈咪baby主数据库 -->
	<bean id="mmbbDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
		<property name="driverClass" value="${earlydata.driver}" />
		<property name="jdbcUrl" value="${earlydata.jdbcurl}" />
		<property name="user" value="${earlydata.username}" />
		<property name="password" value="${earlydata.password}" />
		<property name="maxPoolSize" value="${earlydata.maxpoolsize}" />
		<property name="initialPoolSize" value="${earlydata.initialpoolsize}" />
		<property name="maxIdleTime" value="7200"></property>
		<property name="acquireRetryDelay" value="1000"></property>
		<property name="breakAfterAcquireFailure" value="false"></property>
		<property name="acquireRetryAttempts" value="3" />
		<property name="minPoolSize" value="${earlydata.minpoolsize}" />
	</bean>
	<bean id="mmbbJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"
		  p:dataSource-ref="mmbbDataSource" />
	<bean id="mmbbSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="mmbbDataSource" />
		<property name="mapperLocations">
			<list>
				<value>classpath*:earlyOrm/*.xml</value>
			</list>
		</property>
	</bean>
	<!-- manage transaction -->
	<bean id="mmbbTransactionManager"
		  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="mmbbDataSource" />
	</bean>
	<tx:annotation-driven transaction-manager="mmbbTransactionManager"/>
	<!-- Mabatis Data Layer -->
	<bean id="mmbbSqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
		<constructor-arg index="0" ref="mmbbSqlSessionFactory" />
	</bean>
	<!-- all class in the back-package are auto loaded as a mapper -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="sqlSessionFactoryBeanName" value="mmbbSqlSessionFactory"></property>
		<property name="basePackage" value="com.lymsh.mommybaby.earlydata.dao" />
	</bean>
	<import resource="applicationContext-cxf.xml" />
	<import resource="classpath:/spring/applicationContext_biz_patient.xml"/>
	<import resource="classpath:/spring/spring-mongodb.xml"/>
	<import resource="classpath:/spring/applicationContext-dal.xml"/>
</beans>