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

相关推荐
Nonoas1 小时前
动态代理:发布订阅的高级玩法
java·ide·intellij-idea
程序员-周李斌2 小时前
Java 死锁
java·开发语言·后端
皮皮林5513 小时前
Prometheus+Grafana,打造强大的监控与可视化平台
java
JasmineWr3 小时前
CompletableFuture相关问题
java·开发语言
零雲3 小时前
java面试:知道java的反射机制吗
java·开发语言·面试
java1234_小锋4 小时前
Java进程占用的内存有哪些部分?
java
sxlishaobin4 小时前
Spring Bean生命周期详解
java·后端·spring
曹牧4 小时前
Java:Assert.isTrue()
java·前端·数据库
梦里小白龙4 小时前
JAVA 策略模式+工厂模式
java·开发语言·策略模式
你不是我我5 小时前
【Java 开发日记】我们来说一说 Redis 主从复制的原理及作用
java·redis·github