前段时间接手一个新的项目,需要同时涉及到两个数据库。两个数据库相关性较小,各自独立,其中一个数据库只需要获取相关业务注册信息。通过查找资料,找到了两种解决问题的办法。
最近整理的Java架构学习视频和大厂项目底层知识点,需要的同学欢迎私信我【资料】发给你~一起学习进步!
1. spring配置文件配置2个数据源
配置文件如下所示:
<-- 使用alibaba的Druid数据库连接池 -->
<-- 配置数据源One -->
<bean id="sqlSessionFactoryOne" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSourceOne" />
<property name="configLocation" value="classpath:conf/mybatis-config-one.xml" />
</bean>
<-- mapper扫描器 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<-- 扫描包路径,如果需要扫描多个包,中间使用半角逗号隔开 -->
<property name="basePackage" value="com.test.storage.dao.mapper.one" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactoryOne"/>
</bean>
<-- 配置数据源Two -->
<bean id="dataSourceTwo" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="url" value="${url_two}"/>
<property name="username" value="${username_two}"/>
<property name="password" value="${password_two}"/>
<property name="removeAbandoned" value="true"/>
<property name="removeAbandonedTimeout" value="180"/>
<property name="timeBetweenEvictionRunsMillis" value="20000"/>
<property name="minEvictableIdleTimeMillis" value