Mybatis 实体一对一mapper

首先看一看实体里面是怎么对应实体的Mybatis 实体一对一mapper_第1张图片

如图有一个GzhPropertyRS的实体,包含三个属性

Mybatis 实体一对一mapper_第2张图片

WxGzhInfo实体里面包含了10个属性,其中一个就是GzhPropertyRS实体,那么这样的数据结构在mapper中怎么去对应呢?

这里主要使用的是association关键词,resultMap如下所示

<resultMap id="wxGzhInfoResultMap" type="WxGzhInfo">
    <result property="gzhId" column="gzhId"/>
    <result property="gzhNum" column="gzhNum"/>
    <result property="gzhName" column="gzhName"/>
    <result property="openId" column="openId"/>
    <result property="gzhType" column="gzhType"/>
    <result property="updateTime" column="updateTime"/>
    <result property="deleteFlag" column="deleteFlag"/>
    <result property="userId" column="userId"/>
    <result property="parseTimes" column="parseTimes"/>
    <association property="propertyRS" column="gzhId" javaType="GzhPropertyRS"
    select="com.guoxin.module.weixin.dao.IGzhPropertyRSDao.getGzhPropertyRSById"/>
</resultMap>

起作用的就是这句

<association property="propertyRS" column="gzhId" javaType="GzhPropertyRS"
select="com.guoxin.module.weixin.dao.IGzhPropertyRSDao.getGzhPropertyRSById"/>
</resultMap>

下面来具体介绍一下这句话中的属性

property: 是指在父实体里面的子实体的实例对象

column是指父子实体之间用来一对一关联的属性

javaType是子实体的类型

select是在子实体的mapper里面根据关联属性查找唯一对应子对象的SQL语句

这样做的效率,目前还没有考征,慎用!或者直接另起新的语句一次性查询到位,




你可能感兴趣的:(mybatis,mapper)