java递归生成树结构_java递归生成树形菜单

java递归生成树结构_java递归生成树形菜单publicList getAllCommType(){  ListtreeList=newArrayList();  //取到父节点id为0,只有一个  ListtypeList=commType.getAllCommodityType();  for(Commodity_typetype:typeList){   Treetree=newTree();

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

public List<Tree>  getAllCommType(){

  List<Tree> treeList=new ArrayList<Tree>();
  //取到父节点id为0,只有一个
  List<Commodity_type> typeList=commType.getAllCommodityType();
  for(Commodity_type type :typeList){

   Tree tree=new Tree();
   tree.setId(type.getType_id()+””);
   tree.setPid(type.getParent_id());
   tree.setText(type.getName());
   List<Commodity_type> childList=commType.listChildren(type);
   if(childList.size()>0){

    tree.setState(“close”);
    tree.setChildren(getAllTreeList(childList));
   }
   treeList.add(tree);
  }
  
  return treeList;
 }
 

commType.getAllCommodityType()的查询语句如下:

select * from commodity_type where parent_id=0

commType.listChildren(type)的查询语句如下:

select * from commodity_type where parent_id=#{type_id}

 /**
  * 加载子树(递归加载子子…树)
  * @param subTreeList
  * @return
  */
 public List<Tree> getAllTreeList(List<Commodity_type> subTreeList) {

  List<Tree> treeList = new ArrayList<Tree>();
  for(Commodity_type type : subTreeList) {

   Tree tree = new Tree();
   tree.setId(type.getType_id()+””);
   tree.setPid(type.getParent_id());
   tree.setText(type.getName());
   List<Commodity_type> _subTreeList= commType.listChildren(type);
   if (_subTreeList.size() > 0) {

    tree.setState(“closed”);
    tree.setChildren(getAllTreeList(_subTreeList));
   }
   
   treeList.add(tree);
  }
  return treeList;
 }

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192358.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm怎么配置git_pycharm gitee

    pycharm怎么配置git_pycharm gitee步骤1:配置git配置用户名与邮箱,这里–global表示为全局设置。gitconfig–globaluser.name”yourname”gitconfig–globaluser.emailyouremail@qq.com打开Pycharm,进入settings-VersionControl-Git,路径为你的Git安装路径。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传步骤2:利用Token连接Pycharm与Github账号打开settin

    2022年8月27日
    8
  • Verilog流水线_verilog菜鸟教程

    Verilog流水线_verilog菜鸟教程需求说明:Verilog设计基础内容   :流水线设计来自   :时间的诗流水线设计前言:本文从四部分对流水线设计进行分析,具体如下:第一部分什么是流水线第二部分什么时候用流水线设计第三部分使用流水线的优缺点第四部分流水线加法器举例第一什么是流水线流水线设计就是将组合逻辑系统地分割

    2022年8月14日
    9
  • 详解卷积神经网络(CNN)

    详解卷积神经网络(CNN)卷积神经网络(ConvolutionalNeuralNetwork,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。

    2022年6月21日
    24
  • ExecuteNonQuery()返回值

    ExecuteNonQuery()返回值

    2021年9月25日
    45
  • python深拷贝和浅拷贝详解_Java浅拷贝和深拷贝的区别

    python深拷贝和浅拷贝详解_Java浅拷贝和深拷贝的区别Python深拷贝和浅拷贝详解浅拷贝,指的是重新分配一块内存,创建一个新的对象,但里面的元素是原对象中各个子对象的引用。深拷贝,是指重新分配一块内存,创建一个新的对象,并且将原对象中的元素,以递归的方式,通过创建新的子对象拷贝到新对象中。因此,新对象和原对象没有任何关联。1.浅拷贝使用数据类型本身的构造器对于可变的序列,还可以通过切片操作符:来完成浅拷贝Python还提供了对应的函数copy.copy()函数,适用于任何数据类型1.1使用数据类型本身的构造器lis

    2025年8月13日
    3
  • mcu单片机开发_AVR单片机

    mcu单片机开发_AVR单片机关于单片机(MCU)最强科普

    2022年10月8日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号