项目场景
最近,在做一个用户信息管理系统中,出现了 mybatis-plus 查询数据库始终查不到的问题,现记录如下
开发环境描述
JDK版本:jdk1.8.0_181
IDEA版本:2021.3.2
Maven版本:apache-maven-3.5.2
org.mybatis.spring.boot:2.2.2
mybatis-plus-boot-starter:3.5.1
该问题出现在以上版本,并成功解决。
问题描述
userMapper.selectList(null)
等一系列查询方法都返回为空
为了更直观的展示问题,我新写了一个测试方法,只做查询的业务逻辑
问题截图:
原因分析
逻辑删除注解 @TableLogic
位置错误
分析过程
在 application.yml
配置日志查询
再次运行测试类,发现查询语句中有一段 sql 代码为 WHERE updateTime=0
查看实体类代码,发现 @TableLogic
注解位置出现错误
改正后发现查询正常了
解决方案
修改@TableLogic
注解位置,如下图
心得体会
如果你也出现类似问题,建议
- 开启日志查看自己的
sql
语句是否正确(看是否出现语句错误等问题) - 将日志
sql
语句放到 本地sql
执行 ,对比结果(看是否连接错了数据库)
参考文献
写在后面
欢迎随时留言讨论,知无不答!