将数据列表转换为树形结构 这是数据库的字段 可以分析得出 parent_id 对应是是当前项的父类id,也就是一行元素的id值 经过查询后,获得的数据结构: [ { "parentId ": 0, "id": 1, "code": "001", "name": "成品" }, { "parentId ": 1, "id": 3, "code": "0011", "name": "燃油车" }, { "parentId": 2, "id": 4, "code": "0021", "name": "发动机" }, { "parentId": 2 "parentId": 27, "id": 33, "code": "026", "name": "大灯" }, { "parentId
up_Class_InsertEx] @newId uniqueidentifier, --新记录Id @classType nvarchar(50), --类型(比如:产品,新闻,地区) @parentId if not exists(select F_id From T_Class where F_ClassName=@className and F_type=@ClassType and F_parentid begin set @RootID = 0 if exists(select F_id From T_Class Where F_type=@ClassType and F_parentid =F_parentIdStr,@parentNameStr=F_parentNameStr From T_Class Where F_Id = @ParentId; set @maxOrders @maxOrders = Max(F_orders) From T_Class where F_ParentIdStr like '%' + Convert(Nvarchar(50),@parentId
目标结构: 关键就是一维数组中通过parentId找到其对应的父节点并添加到父节点的children数组中。 name: "AA", }, { id: 1002, parentId: 1001, name: "BB", }, { id: 1003, parentId , parentId: 1003, name: "EE", }, { id: 1006, parentId: 1002, name: "FF", }, { id: 1007, parentId: 1002, name: "GG", }, { id: 1008, parentId: 1004, name: "HH", }, { id: 1009, parentId: 1005, name: "II", }, ];
"日志删除", "parentId": 25 }], "id": 25, "name": "日志管理", "parentId": 8 }, { "children": [{ "parentId": 45 }, { "children": [], "id": 131, "name": "禁用启用", "parentId": 45 }], " "name": "查看", "parentId": 46 }, { "children": [], "id": 116, "name": "新增", "parentId : [], "id": 118, "name": "删除", "parentId": 46 }], "id": 46, "name": "菜单管理", "parentId "parentId": 47 }], "id": 47, "name": "角色管理", "parentId": 8 }, { "children": [], "id": 48
(1L).build(), Student.builder().id(4L).name("sa-token").parentId(1L).build(), Student.builder().id(6L).name("looly").parentId(3L).build(), Student.builder( ).id(7L).name("click33").parentId(4L).build(), Student.builder().id(8L).name( "jobob").parentId(5L).build() ) // just 3 lambda,top parentId is null 6L).name("looly").parentId(3L).build(), Student.builder().id(7L).name("click33").parentId
": 0, }, { "id": 1001, "name": "浙江省", "parentId": 1, }, { "id ", "parentId": 2001, }, { "id": 4001, "name": "杭州市第一人民医院", "parentId" import { groupBy } from 'lodash'; const buildTree = (itemArray, { id = 'id', parentId = 'parentId', parentMap.has(item[parentId])) { parentMap.set(item[parentId], { [children]: [] } ); } parentMap.get(item[parentId])[children].push(item) if (String(item[parentId]) === String
新建一个实体类 import java.util.List; public class Menu { private String id; private String parentId String text; private String url; private List<Menu> children; public Menu(String id, String parentId , String text, String url) { this.id = id; this.parentId = parentId; this.text void setId(String id) { this.id = id; } public String getParentId() { return parentId ; } public void setParentId(String parentId) { this.parentId = parentId; }
code": 1, "data": [ { "id": 1, "organName": "yy有限公司", "parentId null }, { "id": 12, "organName": "212121212", "parentId = data.parentId; if (parentId === 0) { let objTemp = { id: data.id, : parentId, }; dataArray.push(objTemp); } }); this.treeData = = data.parentId; if (parentId == Id) { //判断是否为儿子节点 let objTemp = {
= parentField.get(c); if (isRootNode(parentId)) { roots.add(c); isRootNode(Object parentId) { boolean flag = false; if (parentId == null) { flag = true; } else if (parentId instanceof String && (StringUtils.isEmpty(parentId) || parentId.equals ("0"))) { flag = true; } else if (parentId instanceof Integer && Integer.valueOf( ; } public void setParentId(Integer parentId) { this.parentId = parentId; }
: 96, checked: false, children: null, }, ], parentId : 100, checked: false, }, ], parentId: 93, checked: false , }, ], parentId: 0, checked: false, }, { id: 107, label: 'Canada', : 107, checked: false, }, ], parentId: 0, checked: false, }, { id: s); if (s.parentId) { dist(s.parentId, arr); } } }
= 0}, new UrlTypes() {Id = 2, Name = "河南", Value = "0", ParentId = 1}, new UrlTypes() {Id = 3, Name = "河北", Value = "0", ParentId = 1}, new UrlTypes() {Id = 4, Name = "南阳", Value = "0", ParentId = 2}, new UrlTypes() {Id = 4, Name = "信阳", Value = "0", ParentId = 2}, new UrlTypes() {Id = 5, Name = "新野", Value = "0", ParentId = 4 }, new UrlTypes() {Id = 6, Name = "石家庄", Value = "0", ParentId = 3} };
msg": "success", "code": 1, "data": [{ "id": 1, "organName": "住部门", "parentId = data.parentId; if (parentId === null) { let objTemp = { id: data.id, : parentId, }; dataArray.push(objTemp); } }); this.treeData = = data.parentId; if (parentId == Id) { //判断是否为儿子节点 let objTemp = { data.organName, manager: data.manager, phone: data.phone, parentId
DOCTYPE html> <html> <head> <script> var data=[ {"id":"aaa","parentId":"account","spType":0,"layerId" :0,"seqId":1,"name":"阿萨德发多少","deleted":"0"}, {"id":"account","parentId":"","spType":0,"layerId":0,"seqId ":"阿萨德发多少","deleted":"0"}, {"id":"ccc","parentId":"account","spType":0,"layerId":0,"seqId":3,"name":" a啊都是发","deleted":"0"}, {"id":"ddd","parentId":"dispatch","spType":0,"layerId":0,"seqId":1,"name":"大夫" =data[i]; //data.splice(i, 1) if(node.parentId==parentId ){ var newNode={id:node.id,title
().id(5L).name("mybatis-plus").parentId(2L).build(), JavaBean.builder().id(6L).name("looly").parentId (1L) .children(singletonList(JavaBean.builder().id(6L).name("looly").parentId(3L).build())) (singletonList(JavaBean.builder().id(7L).name("click33").parentId(4L).build())) .build())) (2L) .children(singletonList( JavaBean.builder().id(8L).name("jobob").parentId( (1L) .children(singletonList(JavaBean.builder().id(6L).name("looly").parentId(3L).build()))
= data.parentId; if (parentId === 0) { let objTemp = { id: data.id, : parentId, }; dataArray.push(objTemp); } }); this.treeData = data.parentId; if (parentId == Id) { //判断是否为儿子节点 let objTemp = { = data.parentId; if (parentId === 0) { let objTemp = { id: data.id, = data.parentId; if (parentId == Id) { //判断是否为儿子节点 let objTemp = {
> childList = new ArrayList<>(); List<RegionBean> childTemp = regionDao.queryParentId(parentId ":[],"sortId":2},{"fullLabel":"上海市","id":783,"label":"上海市","parentId":0,"regionBeanList":[],"sortId": ":"铁岭市","parentId":457,"regionBeanList":[],"sortId":2},{"fullLabel":"辽宁省-大连市","id":480,"label":"大连市", "parentId":457,"regionBeanList":[],"sortId":3},{"fullLabel":"辽宁省-鞍山市","id":491,"label":"鞍山市","parentId ,"parentId":457,"regionBeanList":[],"sortId":12},{"fullLabel":"辽宁省-盘锦市","id":560,"label":"盘锦市","parentId
goods_category` ( `goodscateid` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `parentid utf8; /*Data for the table `goods_category` */ insert into `goods_category`(`goodscateid`,`name`,`parentid class GoodsCategoryVo { private Integer goodscateid; private String name; private Integer parentid { "goodscateid": 2, "name": "spring", "parentid { "goodscateid": 4, "name": "struts", "parentid
项目需求:在项目对接过程中,被调用方给返回了一个对象列表,对象中包含id和parentId,但返回的数据没有层级结构,需要调用方自己组装成树级结构;需求分析:由于返回的是否无序的列表,首先需要找到顶级结构 ,然后更加parentId获取子级,递归循环,指定子级没有后代信息;需求实现:想到两种方式:第一种、首先想到的是循环列表,对一个列表进行多次循环,每次只找一级,即可实现;第二种、先根据parentId聚合 ,然后再对聚合map进行递归;相对来说第二种方式,比较合适;但是需要考虑到parentId不存在的情况;先找到顶级,过滤条件为parentId不存在://没有parentid List<TemplateInfo 属性的列表:对非顶级目录进行groupingby聚合比较parentId和id集合,获取到顶级下的第二级对两个id列表进行set,然后通过set的removeAll方法过滤到id Set<String> 为key进行聚合,如果parentId为null或空字符串,聚合时会报错,所以排除了parentId不存在的对象;这里需要添加到顶级 public List<CategoryInfo> genTree
user:view", "checked": 0, "updateTime": "2018/07/21 13:54:16", "isMenu": 1, "parentId user:add", "checked": 0, "updateTime": "2018/07/13 09:13:42", "isMenu": 1, "parentId user:edit", "checked": 0, "updateTime": "2018/07/13 09:13:42", "isMenu": 1, "parentId role:view", "checked": 0, "updateTime": "2018/07/21 13:54:58", "isMenu": 1, "parentId role:add", "checked": 0, "updateTime": "2018/07/13 09:13:42", "isMenu": 1, "parentId
MenuName { get; set; }
///