下面我将按照你的要求,分点详细解释如何使用Hutool将list转换为tree。 1. 理解Hutool工具包中list和tree的数据结构 List:在Java中,List是一个接口,用于定义一个有序的集合。Hutool中的list通常指的是一个包含多个元素的列表,这些元素可以是任何类型的数据。 Tree:在Hutool中,Tree是一个泛型类,用于表示树形结构的数...
//1.配置树节点信息,指定key,可直接使用默认的keyTreeNodeConfig config =newTreeNodeConfig();//2.查询数据List<AreaCode> areaCodes =areaCodeDao.selectAll();//3.转为树结构,其中rootId参数代表根节点的父级id值List<Tree<String>> treeList = TreeUtil.build(areaCodes,"0", config, ((object, tree...
(node, tree) -> {//idtree.setId(node.getId().toString());//姓名tree.setName(node.getName());//获取父节点idtree.setParentId(node.getPid().toString());// 扩展的属性 ...tree.putExtra(status, node.getStatus()); tree.putExtra(desc, node.getDesc()); });returntreeList; } } 7:...
使用HuTool的TreeUtils类将数据由List转为树形JSON结构,发现有的子节点中没有children字段。 复现代码 publicObjectgetData1(){ List<Indicator> indicators = 。。。//配置TreeNodeConfig treeNodeConfig =newTreeNodeConfig();// 自定义属性名 都要默认值的treeNodeConfig.setWeightKey("order"); treeNodeConfig.s...
最后返回到上层的是List<Tree<String>>类型,可以直接塞到统一结果里去返回。 四、测试一下 1. 测试结构数据 测试一下接口,先手动网表里插入了对应结构的数据。 请求接口,传入 projectId 为 3。 { "code": 20000, "message": "成功", "data": [ { "id": "9", "parentId": "0", "pos": 1.0, ...
最后返回到上层的是List<Tree<String>>类型,可以直接塞到统一结果里去返回。 四、测试一下 1. 测试结构数据 测试一下接口,先手动网表里插入了对应结构的数据。 请求接口,传入 projectId 为 3。 {"code": 20000,"message": "成功","data": [{"id": "9","parentId": "0","pos": 1.0,"name": "...
3.通过递归查询的方式,构造树形结构的节点之间的关系,并将结果存储在一个数组或者集合中。 List<Node> nodeList = new ArrayList<>(); // 递归查询,构造节点之间的关系 public void buildTree(List<Node> nodeList, int parentId, int level) { for (Node node : temp_tree) { ...
@Data @NoArgsConstructor @AllArgsConstructor public class Department { private Integer id; private String name; private Integer pid; //父id private Integer status; private String desc; /** * 子目录列表 */ private List<Department> treeNode; } 5:Controller 层 @RestController @RequestMapping("/depa...
最后返回到上层的是List<Tree<String>>类型,可以直接塞到统一结果里去返回。 四、测试一下 1. 测试结构数据 测试一下接口,先手动网表里插入了对应结构的数据。 请求接口,传入 projectId 为 3。 { "code": 20000, "message": "成功", ...
List<Node>tree=(nodeList,"root"); 在上述例子中,我们将nodeList转换成了以”root”作为根节点的树结构。build方法还支持传入一个函数式接口作为参数,用于自定义根节点的查找方式。 3. TreeUtil还提供了遍历树结构的方法,例如先序遍历、后序遍历和层序遍历。我们可以使用这些方法对树结构进行操作。 //先序遍历 ...