List转树形数据,供tree使用
2016-02-28 17:49
267 查看
public List<Map<String,Object>> queryItemListByTmpl(HttpServletRequest request,HttpServletResponse response, HttpSession session, String tmplId){ try { List<DocTmplItem> itemList = this.queryItemList(Integer.parseInt(tmplId)); Map<String, Object> map = new HashMap<String, Object>(); List<Map<String, Object>> rusult = new ArrayList<Map<String, Object>>(); for(DocTmplItem item : itemList){ if(item.getParentId()==null || item.getParentId() == 0){//ParentId = 0 表示顶级【文档项】 map = new HashMap<String, Object>(); map.put("id", item.getDocTmplItemId()); map.put("text", item.getName()); map.put("state", "closed"); map.put("itme", item); this.getSonTree(map, itemList); rusult.add(map); } } return rusult; }catch(Exception e){ log.error(this.getClass().getName(), e); } return null; } private Map<String,Object> getSonTree(Map<String,Object> map,List<DocTmplItem> itemList){ List<Map<String,Object>> sonList = new ArrayList<Map<String,Object>>(); Map<String, Object> sonMap; for(DocTmplItem item : itemList){ if(map.get("id").toString().equals(item.getParentId().toString())){ sonMap = new HashMap<String, Object>(); sonMap.put("id", item.getDocTmplItemId()); sonMap.put("text", item.getName()); sonMap.put("state", "closed"); sonMap.put("itme", item); sonList.add(sonMap); this.getSonTree(sonMap,itemList); } } map.put("children", sonList); return map; }
相关文章推荐
- 104.Reverse Words in a String
- 实践学习——台湾行
- 购买计划
- Java泛型实例
- 详解Javascript中的Object对象
- Android 中的 Service 全面总结
- matlab-code folding功能 将某些行的代码折叠起来方便查看
- Android官方API文档目录
- MyEclipse使用依赖项目在发布项目时报ClassNotFound
- Android中获得正在运行的程序和系统服务的方法
- Android开发学习之路--NDK、JNI之初体验
- 集合框架(一)
- 数据一致性和事物管理
- Ogre学习笔记1(你的第一个场景)
- Android开发学习之路--NDK、JNI之初体验
- vi/vim 中如何在每行行首或行尾插入指定字符串
- 读取系统通讯录信息的时候出错:.IllegalStateException: Couldn't read row 0, col -1 from CursorWindow
- 自定义一个自己的ContentProvider程序
- 使Android studio使用sdk下的docs的api文档:设置方法
- TabLayout与ViewPager和Fragment、FragmentPagerAdapter的合用