参考 :Mybatis中文文档
Mybatis的xml映射文件描述:
- 为什么?
- 由于它的异常强大,映射器的 XML 文件就显得相对简单。
- 如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现**省掉了将近 95% 的代码**
- 省了什么代码 : 在jdbc我们需要自己申请session,还有设置填充参数到sql语句中,拼接sql语句,还要自己动手尽量检查有没有写错sql语句,并且还要为每一条sql语句重复以上操作。
- MyBatis 致力于减少使用成本,让用户能更专注于 **SQL 代码**。
- 有什么?
SQL 映射文件只有很少的几个顶级元素(按照应被定义的顺序列出):
- cache – 该命名空间的缓存配置。
- cache-ref – 引用其它命名空间的缓存配置。
- resultMap – 描述如何从数据库结果集中加载对象,是最复杂也是最强大的元素。
- sql – 可被其它语句引用的可重用语句块。
- insert – 映射插入语句。
- update – 映射更新语句。
- delete – 映射删除语句。
- select – 映射查询语句。
- 怎么用?
配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace:命名空间, -->
<mapper namespace="com.example.mapper.UserMapper">
<!-- 定义 SQL 片段 -->
<sql id="base_columns">
id, username, password, email
</sql>
<!-- 结果映射 -->
<resultMap id="BaseResultMap" type="com.example.entity.User">
<id property="id" column="id" />
<result property="username" column="username" />
<result property="password" column="password" />
<result property="email"