JSON格式转MAP集合
数据格式如下,写个对象吧你看看这个数据格式,真麻烦!写个List吧,也是一层一层的!所以决定用map来收取
{"noticeType": "UNIFORM_SUBSCRIPTION",
"notice": { "returnCode": "000000",
"description": "&½",
"orderId": "74f8ce8913d74969a725ef7c84f64b4b",
"productContent": { "orderType": "1",
"productId": "9020500020090429000894",
"callNumber": "xxxxxxxxxxx",
"productPkgId": "00",
"contentId": "00",
"productName": "7000100301"}}}
这是notice里面的数据的实体类
具体代码如下
public static void main(String[] args) {
String str="{\"noticeType\": \"UNIFORM_SUBSCRIPTION\"," +
" \"notice\": {" +
" \"returnCode\": \"000000\"," +
" \"description\": \"&½\"," +
" \"orderId\": \"74f8ce8913d74969a725ef7c84f64b4b\"," +
" \"productContent\": {" +
" \"orderType\": \"1\"," +
" \"productId\": \"9020500020090429000894\"," +
" \"callNumber\": \"xxxxxxxxxxx\"," +
" \"productPkgId\": \"00\"," +
" \"contentId\": \"00\"," +
" \"productName\": \"7000100301\"}}}";
//打印json数据
System.out.println(str);
//打印结果为{"noticeType": "UNIFORM_SUBSCRIPTION", "notice": { "returnCode": "000000", "description": "&½", "orderId": "74f8ce8913d74969a725ef7c84f64b4b", "productContent": { "orderType": "1", "productId": "9020500020090429000894", "callNumber": "xxxxxxxxxxx", "productPkgId": "00", "contentId": "00", "productName": "7000100301"}}}
//把json数据放到map里
Map maps = (Map)JSON.parse(str);
//打印notice部分的value
//打印结果为{"returnCode":"000000","orderId":"74f8ce8913d74969a725ef7c84f64b4b","productContent":{"orderType":"1","productId":"9020500020090429000894","callNumber":"xxxxxxxxxxx","contentId":"00","productPkgId":"00","productName":"7000100301"},"description":"&½"}
System.out.println(maps.get("notice"));
//取notice部分的json数据塞到实体里
String str2=maps.get("notice").toString();
CommitReceiveResult ls = JSONObject.parseObject(str2, CommitReceiveResult.class);
//打印结果为xxxxxxxxxxx
//74f8ce8913d74969a725ef7c84f64b4b
System.out.println(ls.getProductContent().getCallNumber());
System.out.println(ls.getOrderId());
System.out.println("=======================");
//这里用的是蠢办法,一段一段的去取值
Map maps2 = (Map)JSON.parse(str2);
System.out.println(maps2.get("productContent"));
String str3=maps2.get("productContent").toString();
Map maps3 = (Map)JSON.parse(str3);
System.out.println(maps3.get("productId"));
System.out.println("------------------------");
//这个就是直接map嵌map,可以不用一段一段的去取,直接.get().get()就能取到相应的值
Map<String,Map<String,Map<String,String>>> map=(Map)JSON.parse(str);
System.out.println(map.get("notice").toString());
System.out.println(map.get("notice").get("productContent"));
System.out.println(map.get("notice").get("returnCode"));
System.out.println(map.get("notice").get("productContent").get("orderType"));
System.out.println(map.get("notice").get("productContent").get("productId"));
}
如果大家有更好更快的方法欢迎大家指导,谢谢!
JSON格式转MAP集合相关推荐
- fastjson转list嵌套_FastJson的学习之JSON互相转Map集合,List集合,JavaBean
https://blog.csdn.net/weixin_36910300/article/details/79182120 创建两个实体类 一个是部门类,一个是部门员工类 部门员工类 public ...
- Json字符串转map集合
第一步:在pom.xml中添加依赖; <dependency> <groupId>com.alibaba</groupId> <artifactId>f ...
- JSON格式转MAP的6种方法
/** * JSON字符串自动转换 * Created by zkn on 2016/8/22. */ public class JsonToMapTest01 { public static voi ...
- JSON格式转MAP之常用两种解析方式
public static void main(String[] args) {String jsonStr = "{\"payTime\":\"2022-11 ...
- JSON格式以及基本用法
一.JSON的标准格式 里面的是一个对象,如果是多个对象,则用逗号间隔,即{},{},这样就组成了一个对象序列,为了辨别开始和结束,则需要加上[]才能进行传递,则实际传递的形式应该是[{},{}],如 ...
- 安卓取map集合转换为json_android json解析成map格式
"discount": { "3": "34", "4": "33", "5": ...
- map集合转为JSON字符串
mybatis查询返回的map集合转换为JSON,并在外面嵌套相关节点 之前有尝试过用JSONObject.put字符串方法将额外\字符添加到JSON字符串 jsonobject.put(" ...
- MapString, Object map 集合转 json数组, json数组转list ,按条输出到es
2019独角兽企业重金招聘Python工程师标准>>> Map<String, Object> map 集合转 json数组, json数组转list ,按条输出到es ...
- 【Groovy】json 字符串反序列化 ( 使用 JsonSlurper 进行 json 字符串反序列化 | 根据 map 集合构造相关类 )
文章目录 一.使用 JsonSlurper 进行 json 字符串反序列化 二.根据 map 集合构造相关类 三.完整代码示例 一.使用 JsonSlurper 进行 json 字符串反序列化 将如下 ...
最新文章
- cpld xilinx 定义全局时钟_时钟相关概念
- 2017西安交大ACM小学期数据结构 [又是树状数组、异或]
- STM32项目(五)——智能回收箱
- php函数方法,基于PHP函数的操作方法
- CSS3与页面布局学习总结(八)——浏览器兼容与前端性能优化
- php小论坛开发总结,PHP开发 小型论坛教程之添加论坛-2
- python数据结构-图
- java把字体做成滚动的_Scroll text - JS实现文字自动循环滚动效果
- token详解及常见防范措施
- RDD的创建 -Scala educoder
- ETL调度工具 taskctl-> Designer 设计IDE环境
- 软件开发过程与项目管理(5.软件项目任务分解)
- ads pspice 导入_ADS中使用pspice模型
- shell 修改文件格式
- 左霆:无处不在的订阅经济
- C语言数组制作拼图游戏,C语言例子自制拼图游戏
- GCD中dispatch_group的使用方法
- 数据流分析之Reaching Definition Analysis
- 古墓丽影暗影显卡测试软件,游戏新消息:战地5古墓丽影暗影8K测试单显卡根本带不动...
- 大华sdk(java)上传人脸图片到人脸库,订阅人脸识别对比