zoukankan      html  css  js  c++  java
  • Mybatis自查询递归查找子

    先看一下数据库

    主键id,名称product_code,父parent,和kind

    设计菜单类

    setter,getter

    Dao

    public interface ProductMapper {

    List<TProductKindRelationDto> getProductKindRelationDto();
    }

    mapper.xml

    <mapper namespace="com.adv.biz.dao.ProductMapper" >
    <resultMap id="BaseResultMap" type="com.adv.biz.dto.TProductKindRelationDto" >
    <id column="id" property="id" jdbcType="INTEGER" />
    <result column="product_code" property="productCode" jdbcType="VARCHAR" />
    <result column="parent" property="parent" jdbcType="VARCHAR" />
    <result column="kind" property="kind" jdbcType="VARCHAR" />
    <collection property="childList" ofType="com.adv.biz.entity.TProductKindRelation" column="product_code" select="findByParent">
    </collection>
    </resultMap>


    <select id="getProductKindRelationDto" resultMap="BaseResultMap" >
    select t.id,t.kind,t.parent,t.product_code from t_product_kind_relation t where t.parent is null or t.parent = ''
    </select>

    <select id="findByParent" resultType="com.adv.biz.dto.TProductKindRelationDto">
    select t.id,t.kind,t.parent,t.product_code from t_product_kind_relation t where t.parent=#{product_code}
    </select>

    </mapper>

    其中findByParent会查询到所有的父菜单,

     

    而在getProductKindRelationDto中我们定义了如何去查找子菜单,调用findByParent

  • 相关阅读:
    一个C++程序员学习C#语言
    C#入门教程笔记
    完全卸载mysql 停止服务、卸载相关程序、删除注册表
    C++结构简介
    babun,windows shell
    无限极设计以及随意移动节点(树结构)
    springboot 配置访问外部静态资源详解
    mysql8+keepalived 双主高可用搭建
    mysql 双主复制搭建
    mysql 主备搭建
  • 原文地址:https://www.cnblogs.com/lingbing/p/9668775.html
Copyright © 2011-2022 走看看