解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx

这篇具有很好参考价值的文章主要介绍了解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

今天同事在Mapper.xml自定义写了一个SQL,但是调用mapper的时候缺报错

我大概还原下场景

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.wyh.mapper.UserMapper.findByIDWYH

具体如下
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx

分析问题

一开始我觉得是不是没有扫描到mapper包,但是看了启动类,确实也配注解了呀

解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx
然后我又想 是不是mapper.xml配置的nameSpace和mapper接口的绝对路径对不上呀,但是经过排查,我发现是没问题的

点击小鸟还能调到mapper接口
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx
我又双叒叕想,是不是方法名称没对上呢? 经过排查又打我的脸了
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx

解决问题

正当我一筹莫展的时候,我突然看到application.properties里面的配置项,有一个配置全局mapper文件路径的配置

#  指定mapper.xml的文件路径
mybatis-plus.mapper-locations = classpath*:mybatis/*.xml

我就发现了猫腻,配置的路径是mybatis,但是创建的包确叫做mapper!

相当于拿着张三的手机号给李四打电话!

解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx
我就把两个包名改成一样的了
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx
这次重启测试,问题也就随之解决了
解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx

感慨

这么小的一个错误,和同事大约找了半小时…

还是得认真仔细点呀,越是不起眼的错误,越是难发现

总结

下面简单总结下,报这个错的主要原因

1 没有扫描到mapper接口包,通常需要在启动类使用注解扫描这个包 比如@MapperScan(“com.xxx.mapper”)

2 mapper.xml中的namespace和实际的mapper文件不一致。

3 mapper接口中的方法名和mapper.xml中的id标签不一致

出现问题不要慌 慢慢找总会找到的文章来源地址https://www.toymoban.com/news/detail-402753.html

到了这里,关于解决Mybatis报错并分析原因:Invalid bound statement (not found): com.xxx.mapper.xxx的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Invalid bound statement (not found)出现原因和解决方法

    Invalid bound statement (not found)出现原因和解决方法

    出现的原因:mapper接口和mapper.xml文件没有映射起来。 解决方法: 1、 .mapper.xml中的namespace和实际的mapper文件是否一致 2、 检查mapper接口中的方法名与mapper.xml文件中的id是否一致 推荐大家去下载MyBatisX插件,可以自动实现mapper接口到mapper.xml之间的映射,既能提高效率,又能避

    2024年02月11日
    浏览(11)
  • Invalid bound statement (not found):常见报错原因解决

    Invalid bound statement (not found):常见报错原因解决

    在SpringMVC项目中,通过mapper接口加载映射文件,完成数据库的操作。 报错:Invalid bound statement (not found): 1、xml文件的namespace不正确 2、XxxMapper.java的方法在XxxMapper.xml中没有,运行则会报此错误 3、XxxMapper.java的方法返回值是List,但是没有正确配置ResultMap,或者只配置ResultType 4、

    2023年04月27日
    浏览(12)
  • org.apache.ibatis.binding.BindingException:Invalid bound statement (not found)绑定异常出现原因和解决方法

    org.apache.ibatis.binding.BindingException:Invalid bound statement (not found)绑定异常出现原因和解决方法

    绑定异常,(其实出现这个问题实质就是mapper接口和mapper.xml文件没有映射起来。) 异常提示信息如下: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) :cn.tedu.csmall.server.mapper.BrandMapper.insert 写XML文件时一定要注意注意再注意, 因为报错提示会指定到XML中 出现此异常

    2024年02月06日
    浏览(15)
  • 【报错解决】org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

    【报错解决】org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

     对于这种错误,一般在于mapper接口与xml文件无法绑定。 解决方案: 1.检查xml文件名是否与mapper接口名一致。 2.检查xml文件中namespace是否与mapper接口的全类名一致。(按住ctrl点击能跳转就没问题) 3.是否在主启动类上标注了@MapperScan(“mapper接口所在包的全包名”)或在map

    2024年02月15日
    浏览(19)
  • Junit启动测试mybatis xml文件BindingException: Invalid bound statement问题

    背景:1、正常启动,xml文件放在java目录和resource目录下均正常 2、junit启动,xml文件放在resource目录下正常,放在 java目录下 报BindingException错误 mapperlocation绑定地址为:\\\"classpath:com/a/b/**/*.xml\\\"   原因就在于绑定的地址有问题。   junit生成的test-classes下的测试类test所在目录与c

    2023年04月20日
    浏览(13)
  • myBatis plus 调用基本方法(insert update.... ) Invalid bound statement (not found)

    直接调用BaseMapper 或者 是Iservice 里面的方法报如下错,大概率是依赖版本冲突 我的依赖版本如下,解决了这个问题 “org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)” 错误通常表示在 MyBatis 中找不到有效的绑定语句。 这个错误可能有以下几个可能的原因: SQL

    2024年02月13日
    浏览(12)
  • 出现Invalid bound statement (not found)问题的解决办法(已解决)

    出现Invalid bound statement (not found)问题的解决办法(已解决)

    今天在写项目时出现了 Invalid bound statement (not found):xxxx 这个问题,网上找了很多博客都不行,最后修改了配置文件解决了问题,借此将此类问题常见的解决办法汇总一下。 1.mapper接口中的方法名和mapper.xml中的id标签不一致 推荐大家装MyBatisX这个插件,这样如果mapper中的方法名

    2023年04月26日
    浏览(12)
  • Invalid bound statement (not found)

    目录 一、遇到的问题 二、分析思路 1、映射文件 2、测试类 三、解决方案 前几日,有个工作不久的同事找我帮他解决一个 Mybatis 的问题。他写了一个增删改查,但是在启动程序的时候报错:Invalid bound statement (not found) 。他试图解决该异常,花了一个小时还是没有解决,所以

    2024年02月01日
    浏览(14)
  • BindingException:Invalid bound statement (not found)异常

    BindingException:Invalid bound statement (not found)异常

    本文的mybatis是与springboot整合时出现的异常,若使用的不是基于springboot,解决思路也大体一样的。 但在这之前,我们先要知道整合mybatis的三个重要的工作,如此才能排查,且往下看。 我们打开pom文件如下: 这部分代码的作用是指定需要编译到taget目录下的资源文件。我们的

    2024年02月04日
    浏览(15)
  • 微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式

    微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式

    在项目进行JSSDK使用的过程中,出现了很多问题,其中报错invalid url domain 以及 invalid signature最多,也最头疼,部分坑在文档里也并没有写清楚,这里就简单说下这两个报错的原因和解决方式 当报错invalid url domain时 其实离成功不远了,错误原因也很直白,就是url并没有在公众

    2024年02月08日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包