全部学科
NodeJS全栈
nodejs
Python全栈
python
小程序首页
📅 2026-05-20 6 分钟 ✍️ juanwangdev

自动映射与驼峰转换

MyBatis 支持自动映射,可减少手动 resultMap 配置。

自动映射级别

XML
<settings>
    <!-- NONE: 不自动映射(默认) -->
    <!-- PARTIAL: 自动映射简单属性(无嵌套) -->
    <!-- FULL: 自动映射所有属性(包括嵌套) -->
    <setting name="autoMappingBehavior" value="PARTIAL"/>
</settings>
XML
<!-- 配置 PARTIAL 后,以下查询可自动映射 -->
<select id="selectById" resultType="com.example.entity.User">
    SELECT id, username, email FROM user WHERE id = #{id}
</select>

驼峰命名转换

XML
<settings>
    <setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>

配置后,数据库 user_name 自动映射到 Java username,无需手动配置 resultMap。

数据库列名Java 属性名(开启后)
user_nameusername
create_timecreateTime
is_deletedisDeleted

全局配置示例

XML
<settings>
    <!-- 开启自动映射 -->
    <setting name="autoMappingBehavior" value="PARTIAL"/>
    <!-- 开启驼峰转换 -->
    <setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>

注意:推荐开启驼峰转换,减少大量简单 resultMap 配置。

要点总结

  • autoMappingBehavior 控制自动映射级别,推荐 PARTIAL
  • mapUnderscoreToCamelCase 开启下划线到驼峰自动转换
  • 开启后可简单列名自动映射到 Java 属性
  • 减少手动 resultMap 配置,提升开发效率

📝 发现内容有误?点击此处直接编辑

← 上一篇 多参数传递
下一篇 → Mapper 接口定义
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库