XML 映射配置文件(最常见于MyBatis框架),是Java 代码和数据库之间的 “翻译官”+“配置中心”,核心作用是把 Java 方法和 SQL 语句解耦,统一管理数据库操作。
一、核心作用(最关键的 4 点)
1. 分离 Java 代码和 SQL 语句(最大价值)
- 以前:SQL 直接写在 Java 代码里,改 SQL 要改代码、重新编译、重新部署。
- 现在:SQL 全部写在 XML 文件中,Java 只负责调用方法。
- 好处:修改 SQL不用动 Java 代码,维护更简单,SQL 可读性更强。
2. 实现 SQL 与 Java 方法的映射绑定
XML 里会把:
- 接口方法(如 UserMapper.selectById)
- 对应 SQL(SELECT * FROM user WHERE id=?)
- 结果返回类型(User 对象)
三者绑定在一起,MyBatis 会自动帮你执行。
3. 自动完成结果映射(ORM)
不用手动写 ResultSet 取值、封装对象:
- 数据库表字段 ↔ Java 实体类属性
- MyBatis 根据 XML 配置自动映射、自动封装成 Java 对象
- 大幅减少重复代码
4. 统一管理、复用 SQL
所有 SQL 集中存放,方便查找、审核、优化
支持SQL 片段复用(比如公用的查询字段、条件)
支持动态 SQL(if、where、foreach、choose 等),实现复杂条件查询
二、XML 文件里具体能做什么?
一个标准 MyBatis 映射 XML 包含这些功能:
- 增删改查标签
<select>、<insert>、<update>、<delete>写对应 SQL - 结果映射
自定义字段→属性映射(处理字段名不一致) - 动态 SQL
条件判断、循环拼接 SQL,适配复杂业务查询 - SQL 片段
抽取公共 SQL,多处复用 - 参数传递
安全接收 Java 方法传入的参数,防止 SQL 注入
三、一句话总结
XML 映射配置文件 = 专门存放 SQL + 绑定 Java 方法 + 自动封装结果的配置文件,让 Java 代码和数据库操作彻底分离,让项目更干净、更好维护、更安全。
补充:
通过安装MybatisX插件我们可以快速找到Java方法 对应的 XML文件中的SQL语句
