递归获取当前unid下的所有子树的unid:
/**
* 获取所有子树的unid
* 根据当前unid获取下属所有的子树的unid
* @param P_ParentUnid
* @return
*/
public static StringArrayList getSubTreeUnid(String P_ParentUnid)
{
StringArrayList valueToReturn = new StringArrayList();
if(P_ParentUnid!=null&&P_ParentUnid.length()>0)
{
valueToReturn.add(P_ParentUnid);
StringArrayList childUnids = HCDatabaseFunction.getQueryStrings(PrjSetting.getConn(), " SELECT unid FROM "+DbSetting.TableName.Qysz+" WHERE parentunid='"+P_ParentUnid+"'");
if(childUnids!=null)
{
for(int i=0;i<childUnids.size();i++)
{
String preChildUnid = childUnids.getNotNull(i);//获取每项内容
if(preChildUnid.length()>0)
{
valueToReturn.add(getSubTreeUnid(preChildUnid));//递归寻找下面的子unid
}
}
}
}
return valueToReturn;
}可以获取当前节点以及所有子节点的unid
本文介绍了一种通过递归方法获取指定UNID及其所有子节点UNID的方法。该方法首先将当前UNID添加到返回列表中,然后查询数据库以获取当前节点的所有直接子节点UNID,并对这些子节点继续递归调用该方法,直至遍历完所有子树。
5795

被折叠的 条评论
为什么被折叠?



