个例,如有雷同,纯属巧合。
原因:
错误的写法:
正确的配置:
不知道这个localtions是怎么打上的,如果是自动补全的话应该是locations。导致了如题的错误。
分析:
配置mybatis时候,看博客里各个博主写的有点晕,于是github下了两个demo和看师兄的控制器demo。
启动的时候,报如题的错。应该是mapper接口和Mapper.xml绑定失败。
想起了视频里说Mapper.xml的文件路径应该和mapper接口的路径一致,但是看三个demo中Mapper.xml路径都是resources/mapper/*Mapper.xml。并没有新建和mapper接口一样的路径,于是找到了application.properties中的mybatis 的配置
//配置映射类所在的包名
mybatis.type-aliases-package= cn.example.demo.model
//配置Mapper.xml文件所在的路径,告诉mybatis去哪扫描xml文件
mybatis.mapper-locations= classpath*:mapper/*.xml
参考博客:最简单的SpringBoot整合MyBatis教程
其他博客中写的可能的导致报同样错误的bug:
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
对于“接口名(mapper或dao)与Mybatis的映射文件名(Mapper.xml)一定要一模一样”,不认同。