起初是这样的配置,没什么问题,区别就是平时是resources/mapper/xxxMapper.xml,今天换了resources/mybatis/mapper/xxxMapper,xml

所以在application.yml中这样配置

mybatis:type-aliases-package: com.jjj.springcloud.pojo #没有这句,parameterType="Dept"就得写成parameterType="com.jjj.springcloud.pojo.Dept"mapper-locations: classpath:/mybatis/mapper/*.xml

一、问题

乍一看没什么问题,但是运行起来报错:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.jjj.springcloud.mapper.DeptMapper.queryAllat org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:235) ~[mybatis-3.5.7.jar:3.5.7]at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.<init>(MybatisMapperMethod.java:50) ~[mybatis-plus-core-3.4.3.jar:3.4.3]at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.lambda$cachedInvoker$0(MybatisMapperProxy.java:111) ~[mybatis-plus-core-3.4.3.jar:3.4.3]at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660) ~[na:1.8.0_291]at com.baomidou.mybatisplus.core.toolkit.CollectionUtils.computeIfAbsent(CollectionUtils.java:117) ~[mybatis-plus-core-3.4.3.jar:3.4.3]at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.cachedInvoker(MybatisMapperProxy.java:98) ~[mybatis-plus-core-3.4.3.jar:3.4.3]at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) ~[mybatis-plus-core-3.4.3.jar:3.4.3]at com.sun.proxy.$Proxy66.queryAll(Unknown Source) ~[na:na]at com.jjj.springcloud.service.Impl.DeptServiceImpl.queryAll(DeptServiceImpl.java:29) ~[classes/:na]at com.jjj.springcloud.service.Impl.DeptServiceImpl$$FastClassBySpringCGLIB$$b4800a32.invoke(<generated>) ~[classes/:na]at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.14.jar:5.3.14]at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689) ~[spring-aop-5.3.14.jar:5.3.14]at com.jjj.springcloud.service.Impl.DeptServiceImpl$$EnhancerBySpringCGLIB$$39406ac0.queryAll(<generated>) ~[classes/:na]at com.jjj.springcloud.controller.DeptController.queryAll(DeptController.java:32) ~[classes/:na]at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_291]at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_291]at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_291]at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_291]at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) ~[spring-web-5.3.14.jar:5.3.14]at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) ~[spring-web-5.3.14.jar:5.3.14]at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.14.jar:5.3.14]at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.3.14.jar:5.3.14]at javax.servlet.http.HttpServlet.service(HttpServlet.java:655) ~[tomcat-embed-core-9.0.56.jar:4.0.FR]at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.14.jar:5.3.14]at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[tomcat-embed-core-9.0.56.jar:4.0.FR]at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.14.jar:5.3.14]at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) ~[spring-web-5.3.14.jar:5.3.14]at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.14.jar:5.3.14]at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) ~[spring-web-5.3.14.jar:5.3.14]at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.14.jar:5.3.14]at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) ~[spring-web-5.3.14.jar:5.3.14]at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [tomcat-embed-core-9.0.56.jar:9.0.56]at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.56.jar:9.0.56]at java.lang.Thread.run(Thread.java:748) [na:1.8.0_291]

主要是这个问题:Invalid bound statement (not found): com.jjj.springcloud.mapper.DeptMapper.queryAll

查了一下是mapper.xml没导入,但是看缓存其实是有的

所以应该是有缓存,但mybatis没拿到。

二、解决方案

Ⅰ、xxxMapper.xml改回老位置

保险起见把配置文件注释掉,把xxxMapper.xml搬到了resources/mapper/xxx.mapper

#mybatis:
#  type-aliases-package: com.jjj.springcloud.pojo #没有这句,parameterType="Dept"就得写成parameterType="com.jjj.springcloud.pojo.Dept"
#  mapper-locations: classpath:/mybatis/mapper/*.xml


这应该是Mybatis的xxxMpaaer.xml的默认位置,不需要额外配置

果然没什么问题,问题解决!

Ⅱ、修改配置文件

但我就是想换位置怎么办?结果就是一直:Invalid bound statement (not found): com.jjj.springcloud.mapper.DeptMapper.queryAll

网上看了半天都是那么几种解法,不顶用,然后看了一眼自己之前的项目,用的mybatis-plus,想了一下是不是这个的问题,所以改了配置文件:

mybatis-plus:typeAliasesPackage: com.jjj.springcloud.pojo #没有这句,arameterType="Dept"就得写成parameterType="com.jjj.springcloud.pojo.Dept"mapper-locations:- classpath*:/mybatis/mapper/*.xml


果然,有用!
现在知道问题在哪了,这些代码是mybatis-plus插件自动生成的,本质已经变成mybatis-plus了而不是mybatis,所以得用mybatis-plus的配置。学艺不精。。。

mybatis-plus的mapper.xml路径配置:Invalid bound statement (not found):...相关推荐

  1. mybatis-plus的 mapper.xml 路径配置的坑

    mybatis-plus今天遇到一个问题,就是mybatis 没有读取到mapper.xml 文件. #实体扫描,多个package用逗号或者分号分隔 mybatis-plus:typeAliases ...

  2. springboot整合Mybatis提示org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

    在用maven配置mybatis环境时出现此BindingExceptiony异常,发现在classes文件下没有mapper配置文件,应该是maven项目没有扫描到mapper包下的xml文件, 在 ...

  3. mybatis出现Invalid bound statement

    出现错误: 情景一:Invalid bound statement (not found): **.dao.mapper.DataSetMapper.selectList 情景二: Caused by ...

  4. MyBatis Invalid bound statement (not found)问题 -- 记一次与空气的斗智斗勇

    MyBatis Invalid bound statement (not found)问题 -- 记一次与空气的斗智斗勇 测试Spring Cloud + sharding-jdbc + Mybati ...

  5. 三步教你解决Invalid bound statement (not found): com.xxx.dao.xxxDao.selectByxx错误!!!!很简单

    1 问题实质: dao层(又叫mapper接口)跟mapper.xml文件没有映射 2 问题原因: 出现这种映射问题的原因分为低级原因和更低级原因两种 更低级原因: (1)dao层的方法和mapper ...

  6. Invalid bound statement (not found): com.xxx.dao.xxxDao.selectByxx

    1 问题实质: dao层(又叫mapper接口)跟mapper.xml文件没有映射 2 问题原因: 出现这种映射问题的原因分为低级原因和更低级原因两种 更低级原因:(1)dao层的方法和mapper. ...

  7. Invalid bound statement (not found)异常解决

    问题描述以及解决思路: 1.我这里用的若依微服务框架 2.新建一个user模块ruoyi-user 3.启动后报错mapper映射有问题Invalid bound statement (not fou ...

  8. mybatis(xml)报错:Invalid bound statement (not found): com.zjw.mapper.second.HospitalMapper.insert(已解决)

    今天开发中遇到一个问题: Invalid bound statement (not found):com.zjw.mapper.second.HospitalMapper.insertSelectiv ...

  9. binding.BindingException: Invalid bound statement (not found): xxx → dao接口和mapper.xml映射文件绑定异常

    在进行mybatis开发的时候, 可能会遇到org.apache.ibatis.binding.BindingException: Invalid bound statement (not found ...

最新文章

  1. 英雄难过棍子关html游戏开发,《英雄难过棍子关》评测:看我变长再变长!
  2. android 时间显示格式,Android setting中修改时间显示格式后,桌面的数字时钟widget小部件显示不更新...
  3. PHP获取重定向URL的几种方法
  4. 各版本arm-gcc区别与安装
  5. 阿里开源的那个牛X的问题排查工具——Arthas,推出IDEA插件了!
  6. [转] SQL2000 关于 Java JDBC 驱动的安装和设定
  7. [Android] 输入系统(二)
  8. 实现linux cp 命令和修改配置文件
  9. js 取得input绑定的datalist中的值_javascript基础修炼(9)——MVVM中双向数据绑定的基本原理...
  10. App-V轻量级应用程序虚拟化之三客户端测试
  11. 【android】AIDL传递自定义类型参数
  12. 51cto案例精解第一章PPT
  13. java中String stringBuffer StringBuider
  14. 网络人“时间都去哪儿了”
  15. 关于KDIFF3的使用
  16. java-php-python-springboot网上摄影工作室计算机毕业设计
  17. Java 基础 第3阶段:高级应用——尚硅谷学习笔记(含面试题) 2023年
  18. 超鸿蒙混希夷的翻译,对《愚溪诗序》一处译文的思考
  19. 自动创建文件夹 pictureBox 显示图片 并调用系统窗体打开文件夹
  20. python 版本错误导致的 roscore 问题

热门文章

  1. 联想小新Air14使用傲梅分区助手进行硬盘克隆出现的问题,克隆完显示RAW格式解决方案,win10家庭版硬盘BitLocker上锁解锁方法
  2. 让li 横排显示的CSS代码
  3. 服务器压力测试 性能测试 AB、Webbench、Tsung
  4. Windows编程01_应用程序分类,开发工具和库,第一个Windows程序,字符编码
  5. 摄影构图没有灵感?学习这些优秀案例,想不美都难!
  6. Stata:嵌套Logit模型(NestedLogit)
  7. Primavera P6 导入计划xer异常
  8. ubuntu 安装 OpenBLAS
  9. 交叉编译openblas库
  10. HT74153 6V/2A/1.2MHz 同步降压转换器 IC