Mybatis 查询结果为 null,实际 sql 查询有值

现象

今天使用 mybatis 查询列表,结果查出的是一个有 size 的列表,但是内容都是 null

分析

实际为 null

最先想到的是 sql 有问题,执行了一遍发现结果是有值的。

使用了继承

网上还有一种说法,说是使用了继承。

导致反射可能没有值,看了下代码,model 类是没有继承的。

ResultType 与 ResultMap

后来看了一遍文章,

原因:

只有当数据库表中的字段名称与实体类中的属性名称完全相同,才能直接使用 resultType 返回类型,后面跟上该实体类的名称。

否则一定需要用 resultMap 进行属性映射,否则得到的数据一直没有匹配的实体类与之对应,返回的结果也自然为空!!!

感觉这个最可能,经验证确实是这个原因。

参考资料

解决mybatis查询结果一直为null,但是数据库表查询却有结果

mybatis 查询list,内容为null,但list的size 为1

mybatis查询出字段为null,但是sql查出来有值

本文由博客一文多发平台 OpenWrite 发布!

相关推荐
karry_k11 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k11 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking15 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩17 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码19 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev21 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波1 天前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯1 天前
GoF设计模式——备忘录模式
java·后端·spring·设计模式