JSON 新感
1,如何解析复杂JSON
选择fastJson 用起来简单方便,前提必须是标准的JSON;
例子:
- paraArray = "[" + paraArray + "]";
- _finalMap.put("sourcename", name);
- _finalMap.put("tablename", tablename);
- _finalMap.put("datasource_id", datasource_id);
- _finalMap.put("id", id);
- }
- list = JSON.parseArray(paraArray, Map.class);
- if(list==null){
- return "{\"code\":\"444\",\"msg\":\"查询的信息不存在\"}";
- }
- // 后续自己处理即可
- Map map1 = list.get(0);
- List list1 = (List) map1.get("tableInfos");
- Object ob = null;
- for (int i = 0; i < list1.size(); i++) {
- ob = (Object) list1.get(i);
- String sob = ob.toString();
- sob = "[" + sob + "]";
- List list3 = JSON.parseArray(sob, Map.class);
- System.out.println(list3.toString());
- Map map3 = (Map) list3.get(0);
- List list4 = (List) map3.get("fieldSelectArray");
- List fieldSelectArrayList = new ArrayList();
- for (int k = 0; k < list4.size(); k++) {
- Map temp = new HashMap();
- Object o = list4.get(k);
- String so = o.toString();
- so = "[" + so + "]";
- List list5 = JSON.parseArray(so, Map.class);
- System.out.println(list5);
- Map map4 = (Map) list5.get(0);
- String _name = (String) map4.get("name");
- String _type = (String) map4.get("type");
- String _dict = (String) map4.get("dict");
- temp.put("name", _name);
- temp.put("type", _type);
- temp.put("dict", _dict);
- fieldSelectArrayList.add(temp);
通过获取的字符串加入 “[]”,转化为List<map> ,获取map值,然后再添加[] 再次转化,最终得到,想要的
2,-------字符串评价为JSON
注意:大小包含的JSONObject jsons = new JSONObject();
- jsons.put("paramname",paramname);
- jsons.put("type", type);
- jsons.put("dict",dict);
- JSONObject jsons1 = new JSONObject();
- jsons1.put("paramname", "A");
- jsons1.put("type","B");
- jsons1.put("dict","C");
- List<JSONObject> st = new ArrayList<JSONObject>();
- st.add(jsons);
- st.add(jsons1);
- JSONObject json = new JSONObject();
- json.put("sourcename", name);
- json.put("tableName", tablename);
- json.put("datasource_id", datasource_id);
- json.put("id", id);
- json.put("fieldSelectArray", st);
- JSONObject jsonB = new JSONObject();
- jsonB.put("tableInfos", json);
- System.out.println(jsonB.toString());
- 先添加小的,最内部的JSOn,然后依次向外添加,----------得到想要的为止。
- ------------GOOD LUCKLY !!!-----------
JSON 新感的更多相关文章
- js的JSON新方法和历史记录管理
今天看妙味的视频,一下是一些简单的笔记: 1.JSON的一些新方法: JSON.stringify(); JSON.parse(); 第一个是把js脚本转换成JSON的字符串形式. 而第二个则是吧这种 ...
- json 新用
如果使用struts2的action,可以省去属性赋值的工夫. 但是假如你没有使用struts2,而且使用的是ajax请求,通过json来传递参数.那我下面所说的对你可能是一个很好的解脱,从此告别re ...
- 深入理解计算机系统-从书中看到了异或交换ab两个值的新感
还得从一个很经典的面试题说起:不通过第三个变量来交换两个变量a,b的值... 一个很经典的答案是通过异或来解决: 第壹步:a=a^b; 第贰步:b=a^b; 第叁步:a=a^b; 以前提起" ...
- 简单使用JSON,JavaScript中创建 JSON 对象(一)
JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. ...
- Java读取json文件并对json数据进行读取、添加、删除与修改操作
转载:http://blog.csdn.net/qing_yun/article/details/46865863#t0 1.介绍 开发过程中经常会遇到json数据的处理,而单独对json数据进行 ...
- golang 学习笔记 ---JSON
JSON解析到结构体 在介绍这部分之前先简要介绍一下Json语法 JSON 语法是 JavaScript 语法的子集.JSON 语法是 JavaScript 对象表示法语法的子集. 数据在名称/值对中 ...
- 【java/Json】用Java对象构建Json语法树
本文后续:https://www.cnblogs.com/xiandedanteng/p/11973129.html 编译第一步:将文本解析成Java对象构成的语法树 第二步:将语法树输出整形好的Js ...
- 如何快速为团队打造自己的组件库(上)—— Element 源码架构
文章已收录到 github,欢迎 Watch 和 Star. 简介 详细讲解了 ElementUI 的源码架构,为下一步基于 ElementUI 打造团队自己的组件库打好坚实的基础. 如何快速为团队打 ...
- php获取用户 地区 、ip地址
header("Content-type: text/html; charset=utf-8"); function getCity($ip = '')//获取地区 { if($i ...
随机推荐
- 【2018.06.26NOIP模拟】T3节目parade 【支配树】*
[2018.06.26NOIP模拟]T3节目parade 题目描述 学校一年一度的学生艺术节开始啦!在这次的艺术节上总共有 N 个节目,并且总共也有 N 个舞台供大家表演.其中第 i 个节目的表演时间 ...
- 《DSP using MATLAB》示例Example 8.28
%% ------------------------------------------------------------------------ %% Output Info about thi ...
- LG1343 地震逃生
题意 汶川地震发生时,四川**中学正在上课,一看地震发生,老师们立刻带领x名学生逃跑,整个学校可以抽象地看成一个有向图,图中有n个点,m条边.1号点为教室,n号点为安全地带,每条边都只能容纳一定量的学 ...
- html页面设置一个跟随鼠标移动的DIV(jQuery实现)
说明业务:鼠标放到某个标签上,显示一个div,并跟随鼠标移动 html页面(直接放body里面): <a href="#" id="'+data[i].refund ...
- Linux环境下安装Websphere8.5.5
首先安装包资源: https://pan.baidu.com/s/1Jvkqe3WMgNQ3bn3ggYGhAQ 下面是Installation Manager安装包 agent.installer. ...
- jsp中取两位小数
var d=1.11111111; var c = d.toFixed(2); alert(c);
- 推荐PHP程序员进阶的好书
<UNIX网络编程卷1(第3版)> <UNIX网络编程卷2(第2版)> <UNIX环境高级编程(第3版)> <UNIX编程艺术> <MySQL技术 ...
- Bootstrap组件系列之福利篇几款好用的组件(推荐)
引用 :http://www.jb51.net/article/87189.htm 一.时间组件 bootstrap风格的时间组件非常多,你可以在github上面随便搜索“datepicker”关键字 ...
- html5的canvas方法的总结
canvas的方法 save()保存当前环境的状态 restore() 返回之前保存过的路径状态和属性 createEvent() getContext()返回一个对象,指出访问绘图功能必要的API ...
- View.findViewById()和Activity.findViewById()区别
在网上看见View.findViewById() 和 Activity.findViewById()执行效率不一样 使用Activity.findViewById()如: TextView tv_in ...