字符串解析成easyui-tree的格式
传入的list:
[30 : null : null, 301503 : null : null, 301501 : null : null, 301502 : null : null, 3015 : null : null]
解析后的json:
1 public class LeftTreeBean { 2 public StringBuilder getTreeMenus(List lst, String contextPath) { 3 StringBuilder model = new StringBuilder(""); 4 String RightName = ""; 5 String RightURL = ""; 6 7 Map rightMap = new HashMap(); 8 9 // for (RightObject ro : (ArrayList) lst) { 10 for (Object ro : lst) { 11 ro = (RightObject)ro; 12 String parentId = ((RightObject) ro).getParentID(); 13 14 if ((parentId == null) || (parentId.trim().length() == 0) 15 || (parentId.equalsIgnoreCase("0"))) { 16 parentId = "0"; 17 } 18 if (!rightMap.containsKey(parentId)) { 19 rightMap.put(parentId, new ArrayList()); 20 } 21 22 ((List) rightMap.get(parentId)).add(ro); 23 } 24 25 List lro = (List) rightMap.get("0"); 26 27 if (lro != null) { 28 model.append("["); 29 30 Map mt = ConfUtil.getMenus(); 31 32 // for (RightObject ro : lro) { 33 for (Object ro : lro) { 34 ro = (RightObject)ro; 35 RightName = (String) ((Map) mt.get(((RightObject) ro).getRightID())) 36 .get("RIGHTNAME"); 37 RightURL = ""; 38 39 model.append('{').append("key:") 40 .append(JSONUtilities.quote(((RightObject) ro).getRightID())) 41 .append(",title:") 42 .append(JSONUtilities.quote(RightName)); 43 44 if (rightMap.containsKey(((RightObject) ro).getRightID())) { 45 model.append(",isFolder:true,children:[\n"); 46 47 for (RightObject ro2 : (List) rightMap.get(ro.getRightID())) { 48 Map rItem = (Map) mt.get(ro2.getRightID()); 49 if (rItem != null) { 50 RightName = (String) rItem.get("RIGHTNAME"); 51 52 model.append("\t{") 53 .append("key:") 54 .append(JSONUtilities.quote(ro2 55 .getRightID())).append(",title:") 56 .append(JSONUtilities.quote(RightName)); 57 58 if (rightMap.containsKey(ro2.getRightID())) { 59 model.append(",isFolder:true,children:[\n"); 60 61 for (RightObject ro3 : (List) rightMap.get(ro2 62 .getRightID())) { 63 if (mt.containsKey(ro3.getRightID())) { 64 RightName = (String) ((Map) mt.get(ro3 65 .getRightID())) 66 .get("RIGHTNAME"); 67 RightURL = (String) ((Map) mt.get(ro3 68 .getRightID())).get("URL"); 69 String BUSSFUNCID = ro3.getBussFuncID(); 70 71 String split = RightURL.indexOf("?") >= 0 ? "&" 72 : "?"; 73 String url = contextPath 74 + RightURL.replace('\\', '/') 75 + split + "RightID=" 76 + ro3.getRightID() 77 + "&_menuID=" 78 + ro3.getRightID() + "&funcID=" 79 + BUSSFUNCID; 80 81 model.append("\t\t{") 82 .append("key:") 83 .append(JSONUtilities.quote(ro3 84 .getRightID())) 85 .append(",title:") 86 .append(JSONUtilities 87 .quote(RightName)) 88 .append(",url:") 89 .append(JSONUtilities 90 .quote(url)) 91 .append("},\n"); 92 } 93 } 94 model.deleteCharAt(model.length() - 2).append( 95 "\t\t]"); 96 } 97 model.append("},\n"); 98 } 99 } 100 model.deleteCharAt(model.length() - 2).append("\t]"); 101 } 102 model.append("},\n"); 103 } 104 105 model.deleteCharAt(model.length() - 2).append(']'); 106 } 107 108 return model; 109 } 110 }
转载于:https://www.cnblogs.com/Sunnor/p/5823978.html
字符串解析成easyui-tree的格式相关推荐
- 将html代码确析成json数据格式,JSON字符串解析成JSON数据格式
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...
- 如Java8的LocalDate与Date相互转换、ZonedDateTime等常用操作包含多个使用示例、Java8时区ZoneId的使用方法、Java8时间字符串解析成类
下面将依次介绍 Date转Java8时间类操作 ,Java8时间类LocalDate常用操作(如获得当前日期,两个日期相差多少天,下个星期的日期,下个月第一天等) 解析不同时间字符串成对应的Java8 ...
- 实现迷你解析器把字符串解析成NestInteger类 Mini Parser
为什么80%的码农都做不了架构师?>>> 问题: Given a nested list of integers represented as a string, implem ...
- php将sql语句识别成字符串,ASP_把字符串转换成数据库SQL语句格式,复制代码 代码如下:'把字符串 - phpStudy...
把字符串转换成数据库SQL语句格式 复制代码 代码如下: '把字符串转换成数据库SQL语句格式 '------------------------------------------------- F ...
- 0字符串 if mapper test_mybatis的if判断条件将字符串解析成了数字
mybatis可以帮我们自动映射字段,在mapper.xml文件中,我们可以不用去写jdbcType来明确指定数据类型,它会自动解析成相对应的java数据类型,每次在使用了mybatis-genera ...
- C#将json字符串解析成对象
首先我们在客户端生成json字符串,通过ajax把该字符串传到服务器端 //这是一个以id,email,age的json字符串 var jdata="[{\"id\":0 ...
- 关于json格式字符串解析并用mybatis存入数据库
园子里面找了很多关于json解析后存入数据库的方法,不是太乱,就是没有写完,我下面的主题代码多是受下面两位的启发,请按顺序查看 http://www.cnblogs.com/tian830937/p/ ...
- 使用EasyUI Tree异步加载JSON数据 生成树
这几天因为工作需要,要做一个支持无限级的菜单. 我也是菜鸟一只,能想到的东西不多,所以用了Easy UI的tree组件. 不得不说,easyui确实很强大. 因为是无限级菜单,数据量可能有点大,所以考 ...
- easyUI tree 异步加载数据
easyUI 的 Tree组件在大部分时候都要从数据库读取数据,本文基于Java语言来实现easyUI tree的异步加载. 先看一下实现的效果: 整个过程采用的是简单三层架构,无论采用哪种模式,只要 ...
最新文章
- 一个缓存穿透引发的血案
- Mocha BSM产品亮点——关联事件分析
- python用turtle调整文字位置_Python turtle学习笔记
- Bootstrap居中显示
- Android 自定义View绘制的基本开发流程 Android自定义View(二)
- 19) maven 项目结构:聚集
- pads 文本不能修改_修改PDF文件很难?其实很简单,只是你少了一个好用的PDF编辑器...
- Intermapper系列网络管理工具中文版教程
- 从 0 开始搭建一个技术博客,私藏干货~
- c语言程序设计2试卷答案,《C语言程序设计》试卷2参考答案.doc
- IAR模板--怎样在IARproject中创建和使用模板
- mysql计算相关系数_用sql实现相关系数的计算
- wps编号无法继续_wps的多级编号出问题了
- 产品策划到底是做什么的?
- shell编程快速入门(一)
- “GitHub: Your account has been flagged.”的完美解决方法
- Realtek WiFi concurrent 模式介绍
- oracle查运行sql语句,查询Oracle正在执行的SQL语句
- ICCV2021: 淘系素材制备平台中的自研交互式分割技术(含试用demo)
- MTD原始设备与NANDFLASH硬件驱动交互
热门文章
- 使用RMAN创建复制数据库
- 数据分析、关键词和地下产业
- 关于bash的shellshock漏洞
- [原]Java程序员的JavaScript学习笔记(7——jQuery基本机制)
- Linux常出现的面试试题
- Android:adb进程问题
- Php global echo,php中global和$GLOBALS[]的分析之一
- Vue学习之ref属性
- html提交按钮tab设置,html – 提交按钮没有集中,即使tabindex被正确设置
- 函数不可以直接调用其他函数内部定义的变量_python的函数