菜单实体类
package com.example.demo.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Menu {
/**
* id
*/
public Integer id;
* 名称
public String name;
* 父id ,根节点为0
public Integer parentId;
* 子节点信息
public List生成树结构工具类
package com.example.demo.util;
import cn.hutool.json.JSONUtil;
import com.example.demo.entity.Menu;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
public class TreeUtil {
/**
* 递归查询子节点
*
* @param root 根节点
* @param all 所有节点
* @return 根节点信息
*/
public static List