zoukankan      html  css  js  c++  java
  • mybatis---resultmap和resulttype

    在使用mybatis时遇到的问题。分享给大家

    R

    ResultMapWithBLOB是我自定义的一个resultmap。代码如下
    
    
    <resultMap id="ResultMapWithBLOB" type="model.Blog" >
        <constructor >
          <idArg column="id" jdbcType="INTEGER" javaType="java.lang.Integer" />
          <arg column="title" jdbcType="VARCHAR" javaType="java.lang.String" />
          <arg column="describle" jdbcType="VARCHAR" javaType="java.lang.String" />
          <arg column="writer" jdbcType="VARCHAR" javaType="java.lang.String" />
          <arg column="context" jdbcType="LONGVARCHAR" javaType="java.lang.String" />
        </constructor>
      </resultMap>
      <sql id="Base_Column_List" >
        id, title, describle, writer
      </sql>
      <sql id="Blob_Column_List" >
        context
      </sql>
      <select id="selectByPrimaryKey" resultType="ResultMapWithBLOB" parameterType="java.lang.String" >
        select 
        <include refid="Base_Column_List" />
        ,
        <include refid="Blob_Column_List" />
        from blog
        where writer = #{writer,jdbcType=VARCHAR}
      </select>
    
    

    再把单元测试的代码贴出来

    
    
       public void showpersonblog()throws Exception{
                List<Blog> b=blogService.showAllBlogPerson("1");
            for (Blog c:b
                 ) {
                System.out.println(c.getId());
                System.out.println(c.getContext());
                System.out.println(c.getDescrible());
                System.out.println(c.getTitle());
                System.out.println(c.getWriter());
            }
    
        }
    
    

    问题原因:MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接
    表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟resultMap不能同时存在。

    解决方法:将resulttype改为resultmap

    
    
      <select id="selectByPrimaryKey" resultMap="ResultMapWithBLOB" parameterType="java.lang.String" >
        select 
        <include refid="Base_Column_List" />
        ,
        <include refid="Blob_Column_List" />
        from blog
        where writer = #{writer,jdbcType=VARCHAR}
      </select>
    
    
    
     
     
     
    没有虚过一天,真好
  • 相关阅读:
    C3线性化
    fingerprint for the ECDSA key
    tmp
    线性筛(欧拉筛)
    tmp
    tmp
    Micro Frontends 微前端
    TreeFrog Framework : High-speed C++ MVC Framework for Web Application http://www.treefrogframework.org
    消息同屏转发
    web-linux-shell实现 阿里方案canvas+wss。
  • 原文地址:https://www.cnblogs.com/dailinfu/p/6339951.html
Copyright © 2011-2022 走看看