Mybatis的XML映射文件的继承问题

Posted 51ctoedu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis的XML映射文件的继承问题相关的知识,希望对你有一定的参考价值。

1.首先dao层mapper.java需要继承原来的接口

  原dao层接口

public interface TagMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table t_tag
     *
     * @mbg.generated
     */
    long countByExample(TagExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table t_tag
     *
     * @mbg.generated
     */
    int deleteByExample(TagExample example);
}

  扩展后的dao层接口

public interface TagExtendMapper extends TagMapper {
    ...
}

2.继承原始mapper.xml的结果映射 

  原始mapper.xml的结果映射

<mapper namespace="com.dreamcloudprint.dao.mapper.TagMapper">
  <resultMap id="BaseResultMap" type="com.dreamcloudprint.dao.Tag">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
    -->
    <id column="id" jdbcType="CHAR" property="id" />
    <result column="tag_name" jdbcType="VARCHAR" property="tagName" />
    <result column="tag_alias" jdbcType="VARCHAR" property="tagAlias" />
  </resultMap>
</mapper>

  扩展mapper.xml的结果映射

<mapper namespace="com.dreamcloudprint.dao.TagExtendMapper">
    <select id="xxxxx" resultMap="com.dreamcloudprint.dao.mapper.TagMapper.BaseResultMap"> <!-- 这里时原始命名空间加上结果集id -->
    </select>
</mapper>

  或者是

<mapper namespace="com.dreamcloudprint.dao.TagExtendMapper">
   <resultMap id="ExtBaseResultMap" type="com.dreamcloudprint.dao.Tag" extend="com.dreamcloudprint.dao.mapper.TagMapper.BaseResultMap">
       ...
  </resultMap>
</mapper>

 

 个人笔记,价值不高,技术太菜,希望大家多多提意见,如果又什么更好的技术欢迎分享哦!

以上是关于Mybatis的XML映射文件的继承问题的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis的XML映射文件

MyBatis官方文档-XML 映射文件

MyBatis框架浅析之 Mapper.xml 映射文件

笔记:MyBatis Mapper XML文件详解 - 映射和参数

MyBatis关联查询,表字段相同,resultMap映射问题的解决办法

MyBatis Mapper XML 文件 的学习详解