栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.springb

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.springb

最近在学习mybatis逆向工程课程时,在逆向生成mapper和model层,并写了一个查询接口,试运行时,却出现错误,浏览器页面显示如下:

idea控制台报错如下:

错误信息为:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.springboot012mybatis02.mapper.StudentMapper.selectByPrimaryKey

翻译为无效的绑定语句(未找到)

我的mybatis自动生成的定义操作数据库的sql映射文件mapper.xml,在项目中位于mapper层下:

点击target查看项目构建后的目录,在mapper文件夹下却没有发现mapper.xml

看来,逆向工程自动生成的映射文件mapper.xml没有被编译啊。

因为映射文件被放在了java目录下,该目录下只有.java文件才会被编译。

解决方案一

在pom.xml中手动指定.xml为资源文件

具体操作:在 标签中添加如下配置

        
            
                src/main/java
                

                    **/*.xml
                
            
        

然后一定要点击右上角的加载Maven变更

再次运行项目,发现错误消失了

解决方案二

由于我的项目结构中,资源文件都在resources目录下,因此我们可以在resources目录下建一个mapper目录,将

mapper.xml文件移动到mapper目录下。

进行完这一步,重新运行,发现还是会报同样的错误

这是因为你进行移动操作之后,还得在核心配置文件里告诉mybatis一声,你搬家搬到哪里去了:

在application.properties里添加如下说明:

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

然后重新运行,错误消失

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/285655.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号