zoukankan      html  css  js  c++  java
  • Tree数据从后台处理类

    public class TreeUtils {
        /**
         * 使用递归方法建树
         * @param treeNodes
         * @return
         */
        public static List<ProjectBasicInfoDTO> buildByRecursive(List<ProjectBasicInfoDTO> projectBasicInfoDTOs) {
            List<ProjectBasicInfoDTO> trees = new ArrayList<ProjectBasicInfoDTO>();
            for (ProjectBasicInfoDTO projectBasicInfoDTO : projectBasicInfoDTOs) {
                if ("".equals(projectBasicInfoDTO.getpId()) || projectBasicInfoDTO.getpId() == null ) {
                    trees.add(findChildren(projectBasicInfoDTO,projectBasicInfoDTOs));
                }
            }
            return trees;
        }
        
        /**
        * 递归查找子节点
        * @param treeNodes
        * @return
        */
        public static ProjectBasicInfoDTO findChildren(ProjectBasicInfoDTO projectBasicInfoDTO,List<ProjectBasicInfoDTO> projectBasicInfoDTOs) {
            for (ProjectBasicInfoDTO projectBasicInfoDTO2 : projectBasicInfoDTOs) {
                if(projectBasicInfoDTO.getId().equals(projectBasicInfoDTO2.getpId())) {
                    if(projectBasicInfoDTO.getChildren() == null) {
                        projectBasicInfoDTO.setChildren(new ArrayList<ProjectBasicInfoDTO>());
                    }
                    //是否还有子节点,如果有的话继续往下遍历,如果没有则直接返回
                    projectBasicInfoDTO.getChildren().add(findChildren(projectBasicInfoDTO2,projectBasicInfoDTOs));
                }
            }
            return projectBasicInfoDTO;
        }
    }
  • 相关阅读:
    Spring Boot Docker
    基于 Spring Security 的前后端分离的权限控制系统
    Java图片加水印
    Linux安装Nexus
    Spring Security 入门篇
    树形结构的菜单表设计与查询
    延迟队列的常用的实现方式
    Spring Boot 自动配置 源码分析
    Spring Boot 启动过程
    服务端如何防止重复支付
  • 原文地址:https://www.cnblogs.com/fengyangcai/p/13643289.html
Copyright © 2011-2022 走看看