news 2026/5/1 8:13:58

关于resultMap映射失败后为什么还能正常输出数据库表的相关内容

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
关于resultMap映射失败后为什么还能正常输出数据库表的相关内容

在学习Mybatis的过程中,我遇到了这样一个问题:

我这里是使用resultMap来自定义映射关系,我发现,我的主键和普通字段的映射关系即使是乱填的,我使用单元测试:

测试此函数后,输出如下:

我的数据库表如下:

实体类设置的属性如下:

private Integer departmentId; private String department;

这里我就有了一个疑问:

为什么这里的department还能正确输出数据库表的内容?我的resultMap的映射关系都是乱写的啊,为什么?

原因:MyBatis 的自动映射机制(auto-mapping)

resultMap 配置无效,但自动映射机制仍生效

column=“sgrg” 和 column=“sdfaf” 是不存在的数据库列名(实际列是 department_id 和 department)。

MyBatis 无法将这些无效列映射到任何属性,因此 resultMap 没有成功映射任何数据。

当 resultMap 无法处理这些列时(因为配置的列不存在),MyBatis 会回退到自动映射机制(auto-mapping)。

自动映射规则:

如果数据库列名与实体类属性名完全一致,MyBatis 会直接映射(无需额外配置)。

所以是因为我的实体属性设置的department和数据库列名完全一致,发生了自动映射,所以department还是能正确输出数据库表department列的内容.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/30 11:20:37

船舶导航系统抗干扰测试技术报告

面向群体:软件测试工程师 | 领域:航海电子设备验证 一、抗干扰测试的必要性 现代船舶导航系统(GNSS/INS/雷达融合)面临复杂电磁环境: 干扰类型:GPS欺骗、宽频带阻塞、多径效应、邻频干扰 风险等级&#x…

作者头像 李华
网站建设 2026/5/1 4:45:38

真实世界证据收集:上市后药物安全性监测

真实世界证据收集:上市后药物安全性监测 在新药获批上市之后,真正的考验才刚刚开始。尽管临床试验提供了关键的安全性和有效性数据,但受试人群有限、观察周期较短、合并用药控制严格等因素,使得这些“理想环境”下的结论难以完全反…

作者头像 李华
网站建设 2026/5/1 4:48:16

C++网络编程性能瓶颈:99%程序员忽略的3个关键问题

第一章:C网络编程性能瓶颈概述在高性能服务器开发中,C因其对底层资源的精细控制能力而被广泛采用。然而,在实际网络编程过程中,开发者常面临多种性能瓶颈,这些问题若未妥善处理,将显著影响系统的吞吐量与响…

作者头像 李华
网站建设 2026/5/1 4:48:20

投标文件编制提速:竞争性谈判中的时间优势获取

投标文件编制提速:竞争性谈判中的时间优势获取 在一场政府采购的竞争性谈判中,留给投标方的响应窗口往往只有48小时。这期间不仅要完成技术方案撰写、报价测算、资质整理,还要确保文档风格统一、术语专业、视觉呈现合规。传统流程下&#xff…

作者头像 李华
网站建设 2026/5/1 4:15:16

升学志愿填报建议生成:结合学生特点的AI顾问

升学志愿填报建议生成:结合学生特点的AI顾问 在高考结束后的那几天,无数家庭围坐在电脑前,面对密密麻麻的院校名单和专业代码,焦虑地权衡“冲一冲”还是“稳一点”。一个微小的选择偏差,可能影响学生未来四年的学习环…

作者头像 李华
网站建设 2026/4/28 13:57:48

慢性病管理提醒:糖尿病患者的生活助手

慢性病管理提醒:糖尿病患者的生活助手 在社区医院的慢病随访中,一位65岁的糖尿病患者反复问出同一个问题:“张医生,我早上吃了一片面包,血糖升了是不是就不能再吃了?”这样的对话每天都在重复——不是患者不…

作者头像 李华