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 ...
随机推荐
- CF1114B Yet Another Array Partitioning Task
CF1114B Yet Another Array Partitioning Task 贪心,选择前 \(k*m\) 大的元素对答案进行贡献. 每次划分时,从当前位置往后扫,扫到 \(m\) 个前 \ ...
- UITableView 滚动流程性优化
影响 UITableView 滚动的流畅性的原因 1. 在代理方法中做了过多的计算占用了 UI 线程的时间 2.同上 3.Cell 中 view 的组织复杂 关于第一点,首先要明白 tablevi ...
- Tree的两种存储形式
1.xml存储 2.链式结构存储 List<Node> nodes = new List<Node>() { , Name = "中国" }, , Name ...
- Cache应用中的服务过载案例研究
https://tech.meituan.com/avalanche-study.html
- smarty基本用法,循环,判断
require './smarty/Smarty.class.php'; $sm = new Smarty; $sm->setTemplateDir("./dir");//设 ...
- [转]使用tcpdump抓取HTTP包
tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745 为"GET"前两个字母"G ...
- 【常见Web应用安全问题】---4、Directory traversal
Web应用程序的安全性问题依其存在的形势划分,种类繁多,这里不准备介绍所有的,只介绍常见的一些. 常见Web应用安全问题安全性问题的列表: 1.跨站脚本攻击(CSS or XSS, Cross Si ...
- caffemodel的读取与修改
直接撸代码~ import caffe import numpy as np caffe.set_mode_cpu() net = caffe.Net('myprototxt.prototxt', ' ...
- Tool:Visual Studio
ylbtech-Tool:Visual Studio Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品.VS是一个基本完整的开发工具集,它包括了整个软件生命 ...
- [Java.Web]Tomcat 常用配置
1. web.xml 文件最下方内容 (X:\apache-tomcat-7.0.77\conf\ 目录下) <welcome-file-list> <welcome-file> ...