public String getMXml(Long uid) throws Exception {
boolean boo = false;
String XML = ""; user = userdao.findById(uid);
Iterator it = user.getAsRole().iterator();
while (it.hasNext()) {
roleinfo = (AsRoleinfo) it.next();
Long rId = roleinfo.getRoleid();// 角色ID
List li = mdao.getMenuId(rId);// 菜单ID
str.removeDuplicateList(li);//剔除重复值
for (Object ob : li) {
BigDecimal meid = (BigDecimal) ob;
Long menid = meid.longValue();
System.out.println("rId)))))))))))))))))))))))))))))))))))))))))))))))))))))" + rId);
System.out.println("menid)))))))))))))))))))))))))))))))))))))))))))))))))))))" + menid);
menu = mdao.findById(menid);// 当前节点
/**
 * 验证当前节点是否具有根节点
 */
AsMenu asnu = menu.getAsMenu();// 获得根节点
if (asnu == null) {
boo = false;
XML += "<item text='"
+ str.defaultString(menu.getMenuname()) + "' id='"
+ menid + "' open='' im0='' im1='' im2='' call='"
+ str.defaultString(menu.getCall())
+ "' select='' target='"
+ str.defaultString(menu.getTarget())
+ "' targeturl='"
+ str.defaultString(menu.getTargeturl())
+ "' linktype='"
+ str.defaultString(menu.getLinktype())
+ "' funcType='"
+ str.defaultString(menu.getFunctype())
+ "' function='"
+ str.defaultString(menu.getFunction()) + "'>";
XML += getAsXml(menu);// 获得父节点
XML += "</item>";
} else {
boo = true;
XML += getMenXml(menu);// 获得根节点

}
}
}
System.out.println("getMenXml(menu).trim()===========================>>>>>>>>>>>" + XML);
return XML;
}这是我写其中一个方法,我想判断根节点是否有重复,如果重复就打印一条字符串
大家帮看看