zoukankan      html  css  js  c++  java
  • 2019-04-19 EasyWeb数据源问题

    问题描述:今天增加了个新模块,为了让各个模块自己保留自己的数据源配置,所以把数据源配置类放入自己模块包中,但是进行请求发现数据源会先选择默认的数据源,导致报错说主数据源下不存在表;当我把配置文件放回统一的位置时,问题解决;我一开始以为是几个数据源和事务数据源加载优先级问题,给他们都加了@Order来设置优先级,但是结果只要我把他们挪到别的包下,就会报错

    问题解决:原来在com.wf.ew.common.config.MybatisPlusConfig配置类中也存在@MapperScan("com.wf.ew.*.dao")扫描,导致无法正确根据包名来确定数据源;把该类的扫描去掉即可

    问题延伸:既然是包扫描重复导致了无法正确根据包来判断使用哪个数据源,那为什么把配置类放到该包或者该包子包下可以,放到别的包下就不行呢?是否@MapperScan会进行判断是否已经扫描过该Mapper类,如果在同一包下就会再次放入到不同的SqlSession里面,不是在同一个包或子包的话就不再处理该Mapper类

     

  • 相关阅读:
    AGC算法
    Cordic算法
    git Remote: HTTP Basic: Access denied Git failed with a fatal error.
    mysql 定义用户变量
    Docker 报错处理
    IIS,Docker 部署.Net Core
    SpringBoot向后台传参的若干种方式
    修改Mysql 数据库以及表字符集
    安装Docker
    获取北京时间
  • 原文地址:https://www.cnblogs.com/WongHugh/p/10733516.html
Copyright © 2011-2022 走看看