开发者社区 问答 正文

mybatis 配置两个数据源,mapper绑定时候只能绑定一个-mybatis报错

"<p style=""font-size:13.3333px;""> mybatis 配置两个数据源,mapper绑定时候只能绑定一个,另一个绑定失败。报错。出了本身配置数据源还有没有其他的操作???求大神帮助!!

 <!-- sqlSessionFactory -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 数据库连接池 -->
<property name="dataSource" ref="dataSource" />
<!-- 加载mybatis的全局配置文件 -->
<property name="mapperLocations" value="classpath*:com/qt/mapper/*.xml" />  
</bean>
<!-- mapper扫描器 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 扫描包路径,如果需要扫描多个包,中间使用半角逗号隔开 -->

"

展开
收起
montos 2020-05-31 11:00:07 1123 分享 版权
1 条回答
写回答
取消 提交回答
  • "

    1. 可以分别不同的xml文件,每个都有独立的数据源,类似主从读写分离的配置,通过sqlSession去获取不同的mapper,只是在获取mapper的时候相对繁琐点
    2. 在同一个xml文件配置多个数据源,然后扫描不同的mapper指向不同的dao层,使用的时候可以根据需求引用不同的interface
    ######这种方式貌似可以,写起来确实好麻烦。######配置多个数据源时事务只有第一个起作用,其他的都不起作用的,需要自己搭一个分布式事务管理器,还是有些麻烦的,所以慎用多个数据源。######回复 @Venus_sun : 绑定没问题的,之前我们项目就是配置了两个数据源,都是正常的,只是事务存在问题######回复 @huang_chao_hui : 感觉不是事务影响的我不用xml用dao层注解就没有问题,他现在绑定就有问题,看有人说绑定时候spring区分的好像是有问题,我也没看源码"
    2020-05-31 11:00:19
    赞同 展开评论