MyBatis的映射关系

发布时间 2023-06-27 11:30:20作者: 你的小铃铛呀

MyBatis的映射关系是有一个默认的,采用下划线命名的方式将数据库表的列名按照驼峰式映射成 Java 实体类的属性名

举个例子数据库表名为 tb_user,其中的字段名为 inst_code,对应的实体类属性名为 instCode,这样不用自定义映射关系,会默认二者相对应的

我们也可以自定义映射关系

以一个存储用户信息的表 user 为例,该表的列名分别为 idnameage 和 gender

<!-- 定义 resultMap 标签 -->
<resultMap id="userResultMap" type="User">
    <!-- 定义 id 属性的映射关系 -->
    <id property="userId" column="id" />
    <!-- 定义 name 属性的映射关系 -->
    <result property="userName" column="name" />
    <!-- 定义 age 属性的映射关系 -->
    <result property="userAge" column="age" />
    <!-- 定义 gender 属性的映射关系 -->
    <result property="userGender" column="gender" />
</resultMap>

其中property对应的实体类的属性colum对应的是表字段

需要注意的是,在 Mapper XML 文件中,也可以将 resultMap 标签放在 select 标签内部定义。这样的话,该 resultMap 只会在当前的 select 语句中起作用。