解决mybatis中Invalid bound statement (not found)出现的原因及方法
如图所示,其中标红色的文件要命名一致,否则会报错;其中标蓝色的文件,如果你要把它们放在同一个java/com.example.springbootmybatis.mapper文件中时,命名要一致;如果你把标蓝色的文件像图片中这样子放,则可以命名不一致。resultType可以直接配置接口类的所在包,也可以在application.yml中配置。如果你想知道mapper.xml是否被加载编译了,可以
最新版本的idea,3.2.2版本的spring boot
运行时出现的错误:

原因:
出现这种错误有很多种原因,详情如下:
第一种:创建的文件命名不一致

如图所示,其中标红色的文件要命名一致,否则会报错;其中标蓝色的文件,如果你要把它们放在同一个java/com.example.springbootmybatis.mapper文件中时,命名要一致;如果你把标蓝色的文件像图片中这样子放,则可以命名不一致。
第二种:没有在pom.xml文件中添加与resources中文件相关的配置,这样不会编译后缀.xml等其它后缀的文件
添加进pom.xml中的代码:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>
application*.properties
</include>
<include>
application*.yml
</include>
<include>
**/*.xml
</include>
</includes>
</resource>
<resource>
<directory>src/main/java</directory>
<filtering>false</filtering>
<includes>
<include>
**/*.yml
</include>
<include>
**/*.xml
</include>
<include>
**/*.properties
</include>
</includes>
</resource>
</resources>
</build>
第三种:创建文件的方式不对
在resources中创建文件建议要用"/"这种方式,不要用"."。
第四种:细节错误
文件名或其它配置命称多加字母、漏掉字母等。pom.xml中注意"." 不要写成","·······总之,多检查,排除细节错误。同时,注意代码不要写错了。
第五种:mapper.xml文件配置错误
注意:select 的 id 一定要与你要映射的接口类的方法一致 。resultType可以直接配置pojo类的所在包,也可以在application.yml中配置。
mapper 的 namespace要正确引用你要映射的接口类所在的地址,建议使用ctrl+c 和 ctrl+v


以上便是我遇到的错误了。

如果你想知道mapper.xml是否被加载编译了,可以打开target查看。如果没有,先看看上面第二种错误,同时注意细节。最后clean一下,重新运行一下*Tests.java, target会被重新加载出来。

感谢大家观看!
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)