spring+mybatis多数据源及事物配置
?
《!--第一个数据源--》
<bean id="r_dataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://xx.xx.xx.xx?:3306/db? ? ? ? ?autoReconnect=true&failOverReadOnly=false&wait_timeout=1814400" />
<property name="username" value="reader" />
<property name="password" value="reader" />
<property name="initialSize" value="10" />
<property name="minIdle" value="10" />
<property name="maxIdle" value="50" />
<property name="maxActive" value="80" />
<property name="maxWait" value="10000" />
<property name="jmxEnabled" value="true" />
<property name="validationQuery" value="SELECT 1"/>
? ? ? ? <property name="testOnBorrow" value="true"/>
? ? </bean>
?
? 《!--第二个数据源--》
<bean id="i_dataSource" ?destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://xx.xx.xx.xx:3306/db?autoReconnect=true&failOverReadOnly=false&wait_timeout=1814400" />
<property name="username" value="root" />
<property name="password" value="111111" />
<property name="initialSize" value="10" />
<property name="minIdle" value="10" />
<property name="maxIdle" value="50" />
<property name="maxActive" value="80" />
<property name="maxWait" value="10000" />
<property name="jmxEnabled" value="true" />
<property name="validationQuery" value="SELECT 1"/>
? ? ? ? <property name="testOnBorrow" value="true"/>
</bean>
《!--不同的数据源注入不同的sessionFactory--》
? ? <bean id="r_sqlSessionFactory" value="classpath:mybatis-config.xml" /> ?
? ?<property name="dataSource" ref="r_dataSource" />
</bean> ?
<bean id="i_sqlSessionFactory" value="classpath:mybatis-config.xml" /> ?
? ?<property name="dataSource" ref="i_dataSource" />
</bean> ?
?
《!--扫描mybatis包 ?请注意不同包下得数据源是不同的--》
?<bean name="r_mapperScannerConfigurer" value="com.xx.xx.xx" />
? ? ? ? <property name="sqlSessionFactory" ref="r_sqlSessionFactory" />
? ? </bean>
?
? ? ?<bean name="i_mapperScannerConfigurer" value="com.xx.xx.xx?" />
? ? ? ? <property name="sqlSessionFactory" ref="i_sqlSessionFactory" />
? ? </bean>
?
《!--配置事物-》
<bean id="transactionManager" ref="i_dataSource" />
</bean>
? ? <tx:annotation-driven transaction-manager="transactionManager" proxy-target-/>