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 发布!

相关推荐
漫随流水9 分钟前
创建一个IDEA的Java项目
java·ide·intellij-idea
Hammer_Hans9 分钟前
DFT笔记45
java·jvm·笔记
ABILI .14 分钟前
主动类型转换
java
奋斗的老史16 分钟前
LangChain4j 进阶实战系列
java·langchain4j·ai应用开发
橙子圆12320 分钟前
Redis知识2
java·数据库·redis
callJJ21 分钟前
Codex 联动 OpenSpec 提效方法论
java·开发语言·codex·openspec
过期动态22 分钟前
【RabbitMQ基础篇】RabbitMQ从入门到实战
java·jvm·数据库·分布式·spring·rabbitmq·intellij-idea
上弦月-编程24 分钟前
Java编程:跨平台开发利器
java·开发语言
AI人工智能+电脑小能手26 分钟前
【大白话说Java面试题】【Java基础篇】第38题:两个对象的hashCode()相同,则 equals()是否也一定为 true?
java·开发语言·后端·面试·hash-index
java1234_小锋27 分钟前
什么是可重入锁ReentrantLock?
java·开发语言