zrong 发表于 2016-11-27 08:13:01

spring+mybatis多数据源及事物配置

  《!--第一个数据源--》
  <bean id="r_dataSource" class="org.apache.tomcat.jdbc.pool.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&amp;failOverReadOnly=false&amp;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"  class="org.apache.tomcat.jdbc.pool.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&amp;failOverReadOnly=false&amp;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" class="org.mybatis.spring.SqlSessionFactoryBean">  
      <property name="configLocation" value="classpath:mybatis-config.xml" />  
      <property name="dataSource" ref="r_dataSource" />
  </bean>  
  
  <bean id="i_sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
      <property name="configLocation" value="classpath:mybatis-config.xml" />  
      <property name="dataSource" ref="i_dataSource" />
  </bean>  
  《!--扫描mybatis包  请注意不同包下得数据源是不同的--》
  <bean name="r_mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <property name="basePackage" value="com.xx.xx.xx" />
  <property name="sqlSessionFactory" ref="r_sqlSessionFactory" />
  </bean>
  <bean name="i_mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <property name="basePackage" value="com.xx.xx.xx " />
  <property name="sqlSessionFactory" ref="i_sqlSessionFactory" />
  </bean>
  《!--配置事物-》
  <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager ">
  <property name="dataSource" ref="i_dataSource" />
  </bean>
  
  <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />
页: [1]
查看完整版本: spring+mybatis多数据源及事物配置