mybatis的双数据源创建

本文介绍如何在Spring框架下使用MyBatis进行多数据源配置,并详细展示了通过属性文件配置数据库连接参数及使用BasicDataSource实现动态数据源切换的方法。

一、jdbc中:

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://202.108.211.55:3306/app-apm?useUnicode=true&characterEncoding=UTF8

jdbc.username=test

jdbc.password=admin123

jdbc.initialSize=0

jdbc.maxActive=20

jdbc.minIdle=1

jdbc.maxWait=60000

 

 

jdbc_username2=test

jdbc_password2=admin123

jdbc_url2=jdbc:mysql://202.108.211.55:3306/zj-test?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&autoReconnect=true&failOverReadOnly=false

 

 

 

 

在spring-mybatis.xml配置文件

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"

  destroy-method="close">

  <property name="driverClassName" value="${jdbc.driver}" />

  <property name="url" value="${jdbc.url}" />

  <property name="username" value="${jdbc.username}" />

  <property name="password" value="${jdbc.password}" />

  <!-- 初始化连接大小 -->

  <property name="initialSize" value="${jdbc.initialSize}"></property>

  <!-- 连接池最大数量 -->

  <property name="maxActive" value="${jdbc.maxActive}"></property>

  <!-- 连接池最大空闲 -->

  <property name="maxIdle" value="${jdbc.maxIdle}"></property>

  <!-- 连接池最小空闲 -->

  <property name="minIdle" value="${jdbc.minIdle}"></property>

  <!-- 获取连接最大等待时间 -->

  <property name="maxWait" value="${jdbc.maxWait}"></property>

 </bean>

 

  <bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource"

  destroy-method="close">

  <property name="driverClassName" value="${jdbc.driver}" />

  <property name="url" value="${jdbc_url2}" />

  <property name="username" value="${jdbc_username2}" />

  <property name="password" value="${jdbc_password2}" />

  <!--配置初始化大小、最小、最大 -->

  <property name="initialSize" value="${druid_initialSize}" />

  <property name="minIdle" value="${druid_minIdle}" />

  <property name="maxActive" value="${druid_maxActive}" />

 </bean> 

 

 

 

 

 <!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->

 <!-- 多数据源bean创建 -->

 <bean id="dynamicDataSource" class="cn.org.cert.utils.DynamicDataSource">

  <property name="targetDataSources">

   <map key-type="java.lang.String">

    <!-- 指定lookupKey和与之对应的数据源 -->

    <entry key="dataSource" value-ref="dataSource"></entry>

    <entry key="dataSource2" value-ref="dataSource2"></entry>

   </map>

  </property>

  <!-- 这里可以指定默认的数据源 -->

  <property name="defaultTargetDataSource" ref="dataSource" />

 </bean>

 

转载于:https://www.cnblogs.com/lc93/p/7879149.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值