public List<Map<String, Object>> getTree(){
List<Map<String, Object>> treedata = configMapper.getTree();
List<Map<String, Object>> list = new ArrayList<>();
for(Map<String, Object> map:treedata){
String parentid = map.get("pid").toString();
if(parentid.equals("0")){
Map<String, Object> treeObject = new HashMap<>();
treeObject.put("id", map.get("id"));
treeObject.put("name", map.get("name"));
treeObject.put("children", getTarget(treedata,map.get("id").toString()));
list.add(treeObject );
}
}
return list;
}
/**
* 获得指定节点
* @param treedata
* @param id
* @return
*/
private List<Map<String, Object>> getTarget(List<Map<String, Object>> treedata,String id) {
List<Map<String, Object>> list = new ArrayList<>();
for (Map<String, Object> node : treedata) {
String pid = node.get("pid").toString();
if (pid.equals(id)){
Map<String, Object> obj = new HashMap<>();
obj.put("id", node.get("id"));
obj.put("name", node.get("name"));
obj.put("children", getTarget(treedata,node.get("id").toString()));
list.add(obj);
}
}
return list;
}
java树结构数据转换(递归)
于 2020-11-02 14:19:12 首次发布