1.首先我们得有一个树状结构的表,类似这种结构。必须得有 id,pid 其他的根据需要来。
我们叫它treeTbl表吧。这里pid为0的表示是顶级节点。
2.接着select * from treeTbl ,并将得到的list 转换成一个Map集合,
key 为 pid ,value 为 子元素对象集合或者子元素id集合之类的都可以,根据需要。
我这里只需要id,所以是定义为了List类型。
Map> map=new HashMap>();
for(Object[] obj : list)
{
String id=obj[0].toString();
String pid=obj[1].toString();
if(map!=null && map.get(pid)!=null){
map.get(pid).add(dic_id);
}else{
List list_tmp=new ArrayList();
list_tmp.add(id);
map.put(pid,list_tmp);
}
}
3.递归遍历,说明在注释中
//最终得到的子孙集合
List idList=new ArrayLis