根据数据库表ID,PARENT_ID递归查询目录

数据库表明是Menu,数据库表结构很简单 id,parent_id 。就这样 下面是java代码。

public List<Map<String,Object>> getChild(String id,List<Menu> allList){
    List<Map<String,Object>> childList = new ArrayList<>();
    for(Menu menu : allList){
        if(id.equals(menu.getParent_id())){
                Map<String,Object> map = new HashMap<>();
                map.put("ID",menu.getId()); 
                map.put("PARENT_ID",menu.getParent_id());   
                map.put("HASCHILDREN",FALSE);
                map.put("CHILDREN",new Object[]{});
                childList.add(map);  
    }
  }
  
  for(Map<String,Object> map : childList){
      List<Map<String,Object>> tList =  getChild(String.valueOf(map.get("id")),allList);
      if(!tList.isEmpty()){
               map.put("HASCHILDREN",TRUE);  
    }
     map.put("CHILDREN",tList);
  }    
  return childList;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。