Gson应用:利用map和list来拼装Json消息
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.google.gson.Gson; public class GsonTest { public static void main(String[] args) { Gson g = new Gson();
Map<String,Object> map = new HashMap<String,Object>();
//添加两个普通节点
map.put("a","1");
map.put("b",2); //添加一个list1 => "list1":[{"c":"3","d":4}]
Map<String,Object> m5 = new HashMap<String,Object>();
List<Object> l = new ArrayList<Object>();
m5.put("c","3");
m5.put("d",4);
l.add(m5);
map.put("list1",l); //添加一个map1 =>"map1":{"e":"5","f":"6"}
Map<String,Object> m2 = new HashMap<String,Object>();
m2.put("e","5");
m2.put("f","6");
map.put("map1",m2); //添加一个list2 => "list2":[{"g":"7","h":8},{"g":"9","h":10}]
List<Object> l2 = new ArrayList<Object>();
Map<String,Object> m3 = new HashMap<String,Object>();
Map<String,Object> m4 = new HashMap<String,Object>();
m3.put("g","7");
m3.put("h",8);
m4.put("g","9");
m4.put("h",10);
l2.add(m3);
l2.add(m4);
map.put("list2",l2); //添加一个map2 => "map2":{"i":"5","j":[{"j":"5","k":"5"}],"l":{"j":"5","k":"5"}}
Map<String,Object> m6 = new HashMap<String,Object>();
List<Object> l3 = new ArrayList<Object>();
Map<String,Object> m7 = new HashMap<String,Object>();
m6.put("i","5"); m7.put("j","5");
m7.put("k","5");
m6.put("l",m7); l3.add(m7);
m6.put("j",l3);
map.put("map2",m6); //转换成JSON格式内容
String s = g.toJson(map);
System.out.println(s); } }
输出
{"list1":[{"c":"3","d":4}],"a":"1","b":2,"map2":{"i":"5","j":[{"j":"5","k":"5"}],"l":{"j":"5","k":"5"}},"map1":{"e":"5","f":"6"},"list2":[{"g":"7","h":8},{"g":"9","h":10}]}
{
"list1":[
{
"c":"3",
"d":4
}
],
"a":"1",
"b":2,
"map2":{
"i":"5",
"j":[
{
"j":"5",
"k":"5"
}
],
"l":{
"j":"5",
"k":"5"
}
},
"map1":{
"e":"5",
"f":"6"
},
"list2":[
{
"g":"7",
"h":8
},
{
"g":"9",
"h":10
}
]
}
Gson应用:利用map和list来拼装Json消息的更多相关文章
- C#拼装JSON数组简易方法
下面是我们想要拼接出来的JSON字符串,返回给前台 {"success":"true","msg":"","d ...
- RTSP 消息拼装实例代码
整理了下之前文章提到的RTSP实例的代码,主要是拼装各类消息字段. 首先,抽取一个公共函数,用来根据消息类型,生成不同的format,供sprintf试用. char * GetRTSPCmd( co ...
- Java-map-第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。如果该 年没有举办世界杯,则输出:没有举办世界杯。 附:世界杯冠军以及对应的夺冠年份,请参考本章附录。 附录
第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年 ...
- zk框架中利用map类型传值来创建window,并且传值
@Command @NotifyChange("accList") public void clear(@BindingParam("id") String a ...
- 使用Map辅助拼装树状结构,消除递归调用
目前菜单或其他树状结构在数据库中的存储,多数是以一个parentid作为关联字段,以一维形式存储.使用时全部查询出来,然后在内存中拼装成树状结构.现在主要涉及的是拼装方法的问题. 一般可以进行 递归调 ...
- 将map中的查询参数拼装到URL路径中
被调接口的URL路径: //被调接口url String apiUrl = "http://api.open.xxxxxx.com/implatform/interview/send?acc ...
- 利用阿里巴巴封装的FastJSON来解析json并转换成map
利用阿里巴巴封装的FastJSON来解析json并转换成map package com.zkn.newlearn.json; import com.alibaba.fastjson.JSON; i ...
- 利用MAP动态创建C++类对象
MFC的CRuntimeClass利用链表实现了C++类的动态创建.但是如果项目中对动态创建的要求比较低,我们完全可以利用map实现简单的动态创建. http://blog.csdn.net/yeji ...
- Java 利用Map集合计算一个字符串中每个字符出现的次数
步骤分析 1.给出一串字符串,字符串中可以包含字母.数字.符号等等. 2.创建一个Map集合,key是字符串中的字符,value是字符的个数. 3.遍历字符串,获取每一个字符. 5.使用获取到的字符, ...
随机推荐
- python中字符串使用需要注意的地方
1. r''的使用 'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子 2. u''的使用 引号之前加上字母u时,python会将 ...
- javascript中的this值
如何确定this的值 this值会被传递给所有函数,this的值是基于运行时调用函数的上下文. 例如:从全局作用域调用sayFoo函数时,this引用window对象, 当它作为myObject的一 ...
- 维度表, 事实表, 数据仓库, BI...
以前一直对维度表, 事实表, 数据分析, BI等概念等有一些模糊. 这几天的学习终于让这些有了一些眉目了: 维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进 ...
- 计算机_网络_01_配置IE代理
一.配置代理 1.打开代理设置 打开chrome浏览器设置->高级设置->系统->打开代理设置 2.打开局域网设置 Internet属性->连接->局域网设置 3.配置代 ...
- 【BZOJ 4709】柠檬 斜率优化dp+单调栈
题意 给$n$个贝壳,可以将贝壳分成若干段,每段选取一个贝壳$s_i$,这一段$s_i$的数目为$num$,可以得到$num^2\times s_i$个柠檬,求最多能得到几个柠檬 可以发现只有在一段中 ...
- Java 集合常用特点
1:集合:1) Collection(单列集合) --------------------------------------------------------------------- ...
- Eclipse 反编译插件安装jad【转】
原文地址:http://tangmingjie2009.iteye.com/blog/1916992 Eclipse的反编译插件一直在用jad,感觉很不错. 刚下了个新版的eclipse,配置jad的 ...
- BZOJ2120:数颜色
浅谈树状数组与线段树:https://www.cnblogs.com/AKMer/p/9946944.html 题目传送门:https://www.lydsy.com/JudgeOnline/prob ...
- bzoj 3083 遥远的国度 —— 树链剖分
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3083 换根后路径还是不变,子树分类讨论一下,树剖后线段树维护即可. 代码如下: #inclu ...
- Poj1258_Agri-Net(最小生成树)
一.Description(poj1258) Farmer John has been elected mayor of his town! One of his campaign promises ...