無極限樹結構

Java獲取樹型結構數據:

@RequestMapping("getClassifyJsonTree")

public @ResponseBody String getClassifyJsonTree(String id) {
Map<String, Object> m = new HashMap<String, Object>();
m.put("Data", subClassifyTree(id));
String str = JSON.toJSONString(m);
str = str.replace("Data", "Child");
return str;
}


/***
* 獲取分類樹節點信息 迭代實現
* @return
*/
private List<Map<String, Object>> subClassifyTree(String parentId) {
List<ReportClassify> classifyList;
if (parentId != null && StringUtils.isNotBlank(parentId)) {
classifyList = service.getDirectReportClassifyById(parentId);
} else {
classifyList = service.getTopReportClassify(); 
}


List<Map<String, Object>> classify = new ArrayList<Map<String, Object>>();
for (ReportClassify rc : classifyList) {
List<Map<String, Object>> subClassify = null;
if (service.getDirectReportClassifyCount(rc.getId()) > 0) {
subClassify = subClassifyTree(rc.getId());
}

Map<String, Object> m = new HashMap<String, Object>();
m.put("Id", rc.getId());
m.put("Name", rc.getName());
m.put("Selected", false);
m.put("Child", subClassify);
classify.add(m);
}
return classify;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章