码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Springboot 多模块(A依赖B)集成mybatis , mybatis.mapper-locations 配置多个mapper路径配置


    文章目录

      • 一、问题概述
      • 二、问题分析

    一、问题概述

    最近在用SpringBoot 多模块 集成mybatis,模块A 依赖于模块B, 模块A 和模块B 各自有各自的业务逻辑和mapper 文件,模块A 的mapper xml 文件存放在resource 下的 mybatisMapper 文件夹,模块B 的mapper xm 文件存放在 B 模块的resource 下的 mapper 文件夹, 打包时以A 模块为主,B 以jar 包方式被A 依赖。当SpringBoot 应用启动时,一直 报错

    .BindingException: Invalid bound statement (not found): 
    
    • 1

    二、问题分析

    mybatis 是一个重要的持久化框架,只要通过sql 就可以实现数据的增删改查,原理本质上是通过mapper 接口层和 xml 文件做对应,xml 里的namespace 对应包名,方法对应mapper 接口里的方法名。
    特别注意两点:
    1. mapper 接口的文件名默认要和xml 的文件名保持一致
    2. mapper xml 文件所在包路径要和mapper 接口文件在同一包下,如果不在同一包下,则需要从yml 里面进行配置mapper-locations

    例如:

     mybatis:
        mapper-locations: classpath:mybatisMapper/*Mapper.xml
    
    • 1
    • 2

    但要注意一点: 如果A 模块依赖B 模块,A 为启动类,B模块里面有自己的xml ,则要想实现A 能访问到B 模块下xml 则需要在A 模块下做如下配置:

    mybatis:
       mapper-locations: classpath:mybatisMapper/*Mapper.xml, classpath*:apper/*Mapper.xml
    
    • 1
    • 2

    classpath 和 classpath 区别: classpath:只会到你的class路径中查找找文件; classpath:不仅包含class路径,还包括jar文件中(class路径)进行查找.**

  • 相关阅读:
    基于C++实现⾃然连接操作算法
    Linux性能工具(二)ftrace基础篇
    前端的请求分析(get,post,put,delete,patch)
    如何找到 docker 容器中的网卡外联的 veth pair 的另一张网卡
    Python爬虫-付费代理推荐和使用
    2024版彩虹晴天全能知识付费源码+虚拟商城解决方案 含一键搭建视频教程 无授权限制
    图片上传流程&前端上传文件&后端保存文件&并返回图片地址
    悲观锁和乐观锁
    DXF笔记:线型CENTER的格式及绘制思想
    马上就2023年了,Go语言成了吗?
  • 原文地址:https://blog.csdn.net/u014212540/article/details/133746730
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号