table:
id name parentid
1  name1 null
2  name2 1
3  name3 1
4  name4 2
5  name5 4
6  name6 3
.  .     .
.  .     .
.  .     .我需要的json:
[{id:1,text:'name1',childern:[{
id:2,text:'name2',childern:[{
id:4,text:'name4',childern:[{
id:5,name:'name5'
}]
}]
},{
id:3,text:'name3',childern:[{
id:6,text:'name6'
}]
}]
}]上面只是部分实现,求教如何得到完整的json。

解决方案 »

  1.   


      public List getTree(List plList,int pid)
      {
      String sql="select * from tbl where parentid="+pid;
      List list=DBHelp.query(sql);//child
      if(list==null||list.size()==0)
      return null;
      for(int i=0;i<list.size();i++)
      {
      int tid=((Entity)list.get(i)).getId();
      list.add(getTree(new ArrayList(),tid));
      }
      return list;
      }在外面你获取根节点然后传过来就OK了,然后转换成JSON