项目场景:
一个Spring Boot 简单登录功能连接Mysql时出现的Bug—》org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.demo_login.mapper.UserMapper.getInfo
问题描述:
这是我的代码及运行截图
这是我的项目结构
HelloController类不需要哈,只是为了测试先启动程序
application.yml
mybatis必须与spring对齐,不然会报错(org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.demo_login.mapper.UserMapper.getInfo)
#我这里故意没对齐,所以就报了以下错误
server:
port: 7000
spring:
datasource:
name: user
url: jdbc:mysql://192.168.1.232:3306/activiti?useSSL=false&useUnicode=true&characterEncoding=utf-8
username: root
password: dbajydw1234
driver-class-name: com.mysql.cj.jdbc.Driver
#mybatis必须与spring对齐,不然会报错(org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.demo_login.mapper.UserMapper.getInfo)
#我这里故意没对齐,所以就报了以下错误
mybatis:
mapper-locations: classpath:mapper/*.xml #注意:一定要对应mapper映射xml文件的所在路径
type-aliases-package: com.example.demo_login.bean
多少同学跟我报了一样的错
上网把能搜的都搜过了,方法全部试了一遍,不管用
原因分析:
后来发现是自己复制别人代码往application.yml粘贴application.yml粘贴时,没有自动对齐Spring
解决方案:
变成对齐Spring,前面无空格,不要把mybatis放在spring下属,他俩平级
这个错误困了我两天,搜了一下没有搜到网上特别标注的,所以就单发一篇,为更多小伙伴脱坑。
我只是个渣渣程序媛。。。