mybaties 一对多查询

导读:本篇文章讲解 mybaties 一对多查询,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

实际业务中经常会面对一对多查询,但是我一直不会,知道看到了 macrozheng的mall项目才知道。果然还是应该多看别人的源码以此来开阔视野。

第一步,在xml中创建一个返回类型,返回类型中有3中表达方式对应三种情况

    <resultMap 
            id="updateInfoMap" 
            type="返回的java类型" 
            extends="返回java类型的继承类">
        
        <result column="自定义查询结果行" property="自定义查询结果的属性名" />
        <collection 
            property="一对多中的多,所对应的java中的属性名" 
            columnPrefix="自定义查询列的前缀_" 
            resultMap="属性所对应的mapper所在java路径.xml类型文件对应中resultMap的id">
        </collection>

       <collection 
            property="一对多中的多,所对应的java中的属性名" 
            column="{ex_Id=id}" 
            select="当前mapper中所对应的子查询id"/>
    </resultMap>

第二步,创建返回类型中的查询语句

    <select 
        id="第一步中返回类型对应的id"
        resultMap="返回类型所对应的mapper的java.返回类型所对应的xml中的resultMap">
        select * from a where a.id=#{ex_Id}
    </select>

第三步,新建查询语句

 <!-- 自定义分页 -->
    <select id="getInfoExById"  resultMap="updateInfoMap">
     
        a.*
        b.id 自定义查询列的前缀_id
        FROM t_a a
        LEFT JOIN t_b  b on b.id = a.b_id 
 
        WHERE t.id=#{id}




    </select>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/107703.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!