MyBatis 映射文件深度解析:从基础 CRUD 到复杂关联与动态 SQL
MyBatis 映射文件(通常命名为 XxxMapper.xml)是 SQL 语句与 Java 接口的 “桥梁”,承担着SQL 定义、参数映射、结果转换、缓存配置四大核心职责。相较于全局配置文件,映射文件更贴近业务逻辑,是 MyBatis 灵活可控的关键。本文在基础 CRUD 之上,补充动态 SQL、批量操作、复杂关联映射、缓存优化及工程最佳实践,覆盖 90% 以上的开发场景。
核心 CRUD 操作:细节与扩展
MyBatis 通过 <select>、<insert>、<update>、<delete> 标签实现 CRUD,每个标签都有丰富的属性控制 SQL 执行逻辑,需重点关注事务提交、主键生成、批量操作三大核心场景。
基础 CRUD 与事务提交
MyBatis 的 SqlSession 默认不自动提交事务,需手动调用 commit() 或开启自动提交。
(1)基础示例
1 | <!-- 1. 查询:根据 ID 获取用户 --> |