spring+myBatis 配置多数据源,切换数据源

本文介绍了在项目中如何配置和切换多数据源,以满足从不同数据库获取数据的需求。作者选择了使用Spring的DynamicDataSource实现,通过一个sqlSession管理两个数据源,以简化后期维护和遵循开闭原则。同时提到了不推荐使用每个数据源单独配置sqlSession的方案,因为这在扩展时会变得复杂。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个项目里一般情况下只会使用到一个数据库,但有的需求是要显示其他数据库的内容,像这样,我认为有两种做法

1、在使用另一个数据库的项目里写一些restful接口,满足移动端PC端的同时也满足其他应用调用数据的需求;

2、就是在项目里配置多数据源;

我现在就是要使用另一个数据库的数据,想到了以上两种方法,为了更加熟悉spring,我打算使用第二种方案;

我在百度上查了好多关于spring配置多数据源的blog,最后综合一些,总结一下,用最简洁,最直观的方法来实现这个功能


首先,单数据源配置流程如下


一个数据库对应一个dataSource,然后对应sqlSession,然后再在Dao层实现,配置如下

            <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"  
            destroy-method="close">  
            <property name="driverClassName" value="${datasource.driver}" />  
            <property name="url" value="${datasource.url}" />  
            <property name="username" value="${datasource.username}" />  
            <property name="password" value="${datasource.password}" />  
            <property name="initialSize" value="${datasource.initialSize}"></property>  
            <property name="maxActive" value="${datasource.maxActive}"></property>  
            <property name="maxIdle" value="${datasource.maxIdle}"></property>  
            <property name="minIdle" value=
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值