java返回树形结构给前端

1.移入hutool-all 工具类

        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.7.4</version>
        </dependency>

2.按照下面的代码将,自己的数据拼进去。

List<PcOrganizationT> organizationTList = pcOrganizationTMapper.selectPcOrganizationTList(pcOrganizationT);
        List<TreeNode<String>> treeNodeList = new ArrayList<>();
        organizationTList.forEach(org -> {
            TreeNode<String> node = new TreeNode<>();
            node.setId(org.getOrgId());
            node.setParentId(org.getParentId());
            node.setName(org.getOrgName());
            Map<String, Object> map = new HashMap<>();
            map.put("desc", 1);
            node.setExtra(map);
            treeNodeList.add(node);
        });

        TreeNodeConfig treeNodeConfig = new TreeNodeConfig();
        treeNodeConfig.setIdKey("orgId");
        treeNodeConfig.setParentIdKey("parentId");
        treeNodeConfig.setNameKey("orgName");
        Tree<String> collect = TreeUtil.buildSingle(treeNodeList, "0", treeNodeConfig, new DefaultNodeParser<>());

        collect.setName("组织机构树");
        return AjaxResult.success("查询成功", collect.getChildren());

3. 返回结果

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,如果您需要将构建好的树形结构返回前端,可以使用Java中的JSON库将树形结构转换为JSON格式。下面是一个简单的示例代码: 首先,我们需要在pom.xml中引入json库的依赖: ``` <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.6</version> </dependency> ``` 然后,我们需要修改TreeNode类,添加一个toJson方法,将树形结构转换为JSON格式: ``` import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.util.HashMap; import java.util.Map; public class TreeNode { private String name; private Map<String, TreeNode> children; public TreeNode(String name) { this.name = name; this.children = new HashMap<>(); } public String getName() { return name; } public Map<String, TreeNode> getChildren() { return children; } public void addChild(TreeNode child) { this.children.put(child.getName(), child); } public String toJson() { Gson gson = new GsonBuilder().setPrettyPrinting().create(); return gson.toJson(this); } } ``` 上面的代码中,toJson方法使用了Gson库将树形结构转换为JSON格式,并使用了setPrettyPrinting方法进行了格式化。 接下来,我们可以在Main类中调用toJson方法将树形结构转换为JSON格式,并返回前端。下面是一个简单的示例代码: ``` import java.util.*; public class Main { public static void main(String[] args) { List<String> paths = Arrays.asList( "通道1", "通道1.设备1", "通道1.设备1.DECNO", "通道1.设备1.DECSTATUS", "通道1.设备1.TAG2", "通道1.设备1.technology", "通道1.设备1.TIME", "通道1.设备1.v1", "通道1.设备1.v2", "通道2", "通道2.设备1", "通道2.设备1.TAG1", "西门子PLC", "西门子PLC.s7-300" ); TreeNode root = TreeNode.buildTree(paths); String json = root.toJson(); System.out.println(json); } } ``` 运行上面的代码,可以得到如下的JSON输出结果: ``` { "name": "", "children": { "通道1": { "name": "通道1", "children": { "设备1": { "name": "设备1", "children": { "DECNO": { "name": "DECNO", "children": {} }, "DECSTATUS": { "name": "DECSTATUS", "children": {} }, "TAG2": { "name": "TAG2", "children": {} }, "technology": { "name": "technology", "children": {} }, "TIME": { "name": "TIME", "children": {} }, "v1": { "name": "v1", "children": {} }, "v2": { "name": "v2", "children": {} } } } } }, "通道2": { "name": "通道2", "children": { "设备1": { "name": "设备1", "children": { "TAG1": { "name": "TAG1", "children": {} } } } } }, "西门子PLC": { "name": "西门子PLC", "children": { "s7-300": { "name": "s7-300", "children": {} } } } } } ``` 需要注意的是,上面的代码中只是简单地将树形结构转换为JSON格式,如果您需要进行更复杂的操作,可以根据实际情况进行扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值