如果妳想做壹個樹,妳只需要找出所有的記錄,然後使用遞歸方法判斷子菜單的ID和主菜單的ID之間的相關性。
供您參考,我將目錄樹生成為XML,原理完全相同,並且我的表結構設計與您的表結構完全相同。
公共StringBuffer initXml()拋出函數XmlTreeException {
strxml . append(“& lt;?xml版本=‘1.0‘編碼=‘utf-8‘?& gt\n "
+“& lt;樹id =‘0‘& gt;”);
嘗試{
strxml . append(create tree(funs));
} catch(異常e ){
// TODO自動生成的catch塊
e . printstacktrace();
throw(new functions xmltreeexception(“生成函數目錄數時出錯!“) ));
}
strxml . append(“& lt;/tree》);
返回strXml
}
私有字符串創建樹(List & lt函數& gtfunlist)引發異常{
string buffer XML = new string buffer();
for(fun:funlist ){
XML . append(“& lt;item text =‘“+fun . get funname()+““id =‘“
+fun . getfunid()+“‘open =‘1‘& gt;\ n ");
if (null!= fun . get funs()){
XML . append(create tree(fun . get funs()));
}
XML . append(“& lt;/item & gt;\ n ");
}
return XML . tostring();
}