首页 > 其他 > 详细

Mybatis 递归查询

时间:2020-01-17 17:23:30      阅读:520      评论:0      收藏:0      [点我收藏+]

简介:适合用于上下级关系查询,如菜单类,部门类等等

1. VO响应对象

package com.ruhuanxingyun.entity;

import lombok.Data;

import java.util.List;

/**
 * @description: 分组分支树
 * @author: ruphie
 * @date: Create in 2020/1/17 15:22
 * @company: ruhuanxingyun
 */
@Data
public class GroupHostVo {

    /**
     * ID
     */
    private Long id;

    /**
     * 父ID
     */
    private Long parentid;

    /**
     * 名称
     */
    private String name;

    /**
     * 子集
     */
    private List<GroupHostVo> children;

}

2. mapper.xml文件mysql

  <!-- 级联查询返回模型 -->
    <resultMap id="groupHostMap" type="com.ruhuanxingyun.GroupHostVo">
        <id column="id" jdbcType="BIGINT" property="id"/>
        <result column="parentId" jdbcType="BIGINT" property="parentid"/>
        <result column="name" jdbcType="VARCHAR" property="name"/>
        <collection column="id" property="children" ofType="com.ruhuanxingyun.GroupHostVo" select="findHostListById"/>
    </resultMap>

    <!-- 级联查询分组数据 -->
    <select id="findGroupHostTree" resultMap="groupHostMap">
        select 0 as parentId, id, `name` from group where flag = 0
    </select>

    <!-- 级联查询分支数据 -->
    <select id="findHostListById" parameterType="long" resultMap="groupHostMap">
        select sensor_id as parentId, id, `name` from host where `type` = 2 and sensor_id = #{id}
    </select>

3. swagger数据展示

技术分享图片

Mybatis 递归查询

原文:https://www.cnblogs.com/ruhuanxingyun/p/12206488.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!