继承

Exisi 2021-03-27 07:31:10
Categories: Tags:
  • 继承在java是三大特性之一,可以起到重用代码的作用,而mybatis也有继承的功能,和java中的继承的作用类似,主要在resultMap中使用,可以重用其他resultMap中配置的映射关系

 

  • <resultMap>标签的extends属性用于指定要继承的结果映射的ID或者名称

示例

  • OrderMapper.xml

<resultMap id="orderModelMap2" type="OrderModel">
    <id column="id" property="id"/>
    <result column="user_id" property="userId"/>
    <result column="create_time" property="createTime"/>
    <result column="up_time" property="upTime"/>
</resultMap>

 

<resultMap id="orderModelMap3" type="OrderModel" extends="orderModelMap2">
    <!--通过用户id查询用户信息-->
    <association property="userModel" select="getById1" column="user_Id"/>
</resultMap>

如果一个结果映射继承了另外一个结果映射,那么它会继承父结果映射中所有的属性,并且可以新增加自己的属性。如果子结果映射中定义了与父结果映射中相同名称的属性,那么子结果映射中的定义会覆盖父结果映射中的定义。