将服务器后台返回的数据转换为树结构数据给前台

本文介绍了如何将服务器后台返回的非树结构数据转换为树结构,以便于前台使用。通常这种转换涉及到自关联的数据库表,如地区表。转换方法包括循环和递归两种,通过示例和调试过程解释了这两种方法的执行逻辑,帮助理解数据如何形成层次清晰的树形结构。
摘要由CSDN通过智能技术生成

       我们在前台向后台请求数据时可能会希望能得到一个树结构的数据结构,方便我们前台获取和使用,也能使得数据结构清晰,一目了然,树结构一般情况在我遇到的项目中都是某个表的自关联,使用到子父节点的关系,我们一般情况下可能会有这样的需求,获取全部数据或根据父节点获取子节点所有数据,如果我们直接返回数据,会让数据显得很乱,没有层次关系,所以我们需要使用树结构,我们先看一张图了解一下树结构:我这里随便找一张图了解一下即可



我们再看一张自关联的数据库表,最常见的就是地区表的自连接,例如深圳下面有南山区,广州下面有天河区


接下来我们就来写个例子测试一下:一般我们采用两种方式来转换为树:1.循环 2.递归

/**
 * @Auther: HeJD
 * @Date: 2018/7/6 14:43
 * @Description:
 */

import java.util.List;

/**
 * Created by Massive on 2016/12/26.
 */
public class TreeNode {

    private String id;

    private String parentId;

    private String name;

    private List<TreeNode> children;

    public TreeNode(String id, String name, String parentId) {
        this.id = id;
        this.parentId = parentId;
        this.name = name;
    }
    public TreeNode(String id, String name, TreeNode parent) {
        this.id = id;
        this.parentId = parent.getId();
        this.name = name;
    }


    public Str
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值