字符串解析成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 }
时间: 2024-12-30 12:41:54

字符串解析成easyui-tree的格式的相关文章

将json格式的字符串解析成Map对象

/** * 将json格式的字符串解析成Map对象 <li> * json格式:{"name":"admin","retries":"3fff","testname" * :"ddd","testretries":"fffffffff"} */ private static HashMap<String, String> t

JS中将JSON的字符串解析成JSON数据格式《转》

在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的each方法来遍历 用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里不再做说明. 这里首先给出JSON字符

Jsp开发自定义标签,自定义标签将字符串转成指定的时间格式显示

本例以将 字符串格式的时间转成指定的时间格式显示. 第一步.定义一个标签处理程序类,需要集成javax.servlet.jsp.tagext.TagSupport,代码如下: import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Calendar; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.T

VBScript把json字符串解析成json对象的2个方法

这篇文章主要介绍了VBScript把json字符串解析成json对象的2个方法,本文通过MSScriptControl.ScriptControl和jscript实现,需要的朋友可以参考下 asp/vbscript将json字符解析为json对象的方法,如果asp使用jscript来编写服务器端代码操作json字符串就简单了,vbscript需要MSScriptControl.ScriptControl或者服务器端的jscript来作为中间体才行. vbscript将json字符解析为json对

c# XML解析成EasyUI TreeGrid格式

1.分析EasyUI TreeGrid的数据格式,demo的格式是这样的:http://www.jeasyui.net/demo/treegrid_data1.json 分析之后,得到基本的JSON格式: [ { "id": 1, "name": "name1", "value": "", "children": [ { "id": 2, "name&quo

JS中如何将JSON的字符串解析成JSON数据格式

1.使用eval()函数 服务器端返回json形式的字符串 js中使用eval()解析成js对象 为什么这里要写("(+data+)"),因为eval本身的问题. 由于json是以"{}"的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式. 加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语句(statement)来执行.举一个例子

字符串转换成js的日期格式

js字符串转日期格式 ,JavaScript字符串转日期格式 大家都知道JS是根据结果来确定数据类型的. 当然我们也是可以转化的,下面我就介绍两种关于JS字符串类型转换成日期类型的方法, 我个人比较喜欢的是第一种方法. 大家有什么别的好方法也可以分享一下. 1.eval方法转换方法,---推荐使用这种方法 我写成了一个方法大家要吧直接调用 ? <script type="text/javascript">         //字符串转日期格式,strDate要转为日期格式的

jQuery将字符串解析成json对象

环境 jquery 地址: http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js 浏览器版本: chrome 41.0.2272.118 m 问题: 使用了$.post 提交数据后,获取返回的json数据,将其中的某一单元输出到页面. function (json, state) { var str = eval("(" + json + ")"); var obj = jQuery.parseJSON(str)

[ java 工具类] xml字符串解析成Map(DOM解析)

package com.tencent.jungle.wechat.util; import com.google.inject.Singleton; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; import javax.xml.parsers.DocumentBuilder; import javax.xml.