100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Java返回树形结构的数据 (children方式)

Java返回树形结构的数据 (children方式)

时间:2023-06-17 11:10:52

相关推荐

Java返回树形结构的数据 (children方式)

以children这种方式的实体类来遍历子父级的树形结构。

//问题分类下拉表@Overridepublic List<DA> selectDA(Long deptId,Long userId) {//根据deptId获取当前parentId --- 第一步就是:获取根节点。DA current = sysDropDownListMapper.selectDA(deptId);//以下是可以拿到子部门内容DA root;//如果parentId为0,说明是根目录了。不是0就查找它的上级作为目录。if (current.getParentId()!=0){root = sysDropDownListMapper.selectDA(current.getParentId());}else {root = current;}//因为不需要返回parentId,所以返回同级就可以了。DA item = getItem(root);List<DA> list = item.getChildren();return list;}/*** 采用递归方式来获取树*/private DA getItem(DA parentItem){//查询所有parentId为该数据的data --- 第二步:就是循环遍历parentId为该数据的 data。List<DA> items = sysDropDownListMapper.selectDAByParentId(parentItem.getDeptId());if (items!=null){parentItem.setChildren(items);for (DA item : items) {getItem(item);}}return parentItem;}

对应实体类:

通过children这种方式来给前端显示子父级关系。

package com.ruoyi.system.domain;import java.util.List;public class DA {Long deptId;String deptName;Long parentId;List<DA> children;public Long getParentId() {return parentId;}public void setParentId(Long parentId) {this.parentId = parentId;}public Long getDeptId() {return deptId;}public void setDeptId(Long deptId) {this.deptId = deptId;}public String getDeptName() {return deptName;}public void setDeptName(String deptName) {this.deptName = deptName;}public List<DA> getChildren() {return children;}public void setChildren(List<DA> children) {this.children = children;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。