json字符串转map、json数组演示
公司项目用的IBM封装的json解析,此处采用阿里的fastjson进行演示,代码如下:
package com.alphajuns.test; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.junit.Test; import java.util.Map; /**
* @ClassName JsonToMapTest
* @Description
* @Author AlphaJunS
* @Date 2019/10/23 22:34
* @Version V1.0
**/
public class JsonToMapTest { /**
* @description json字符串转json数组
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run3() {
// json字符串
String jsonStr = "[{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}, "
+ "{\"ID\":\"SX5-1601110\",\"PROCESSID\":\"OP2150\"}, "
+ "{\"ID\":\"X03004-1023111\",\"PROCESSID\":\"OP1140\"}, "
+ "{\"ID\":\"X03004-1003012\",\"PROCESSID\":\"GOP260\"}, "
+ "{\"ID\":\"7903075118\",\"PROCESSID\":\"GOP260\"},{\"ID\":\"13MA-11011\"}]";
JSONArray jsonArray = JSON.parseArray(jsonStr);
// 遍历打印
printMethod(jsonArray);
} /**
* @description
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run2() {
// json字符串
String jsonStr = "{\"OPERATION\":[{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}, "
+ "{\"ID\":\"SX5-1601110\",\"PROCESSID\":\"OP2150\"}, "
+ "{\"ID\":\"X03004-1023111\",\"PROCESSID\":\"OP1140\"}, "
+ "{\"ID\":\"X03004-1003012\",\"PROCESSID\":\"GOP260\"}, "
+ "{\"ID\":\"7903075118\",\"PROCESSID\":\"GOP260\"},{\"ID\":\"13MA-11011\"}]}"; // json转map
Map map = (Map) JSON.parse(jsonStr);
System.out.println("map的value类型:" + map.get("OPERATION").getClass());
JSONArray jsonArray = (JSONArray) map.get("OPERATION");
printMethod(jsonArray);
} /**
* @description json字符串转map
* @author AlphaJunS
* @date 2019/10/23
* @param []
* @return void
*/
@Test
public void run1() {
String jsonStr= "{\"OPERATION\":{\"ID\":\"SX5-1001432\",\"PROCESSID\":\"OP2080\"}}";
// json转map
Map map = (Map) JSON.parse(jsonStr);
System.out.println("map的value类型:" + map.get("OPERATION").getClass());
JSONObject jsonObject = (JSONObject) map.get("OPERATION");
System.out.println("ID:" + jsonObject.get("ID") + ",PROCESSID:" + jsonObject.get("PROCESSID"));
} /**
* @description 遍历json数组打印
* @author AlphaJunS
* @date 2019/10/23
* @param [jsonArray]
* @return void
*/
public void printMethod(JSONArray jsonArray) {
// 遍历json数组
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.get(i);
System.out.println("第" + (i + 1) + "个对象:");
System.out.println("ID:" + jsonObject.get("ID") + ",PROCESSID:" + jsonObject.get("PROCESSID"));
}
}
}
json字符串转map、json数组演示的更多相关文章
- json字符串转map
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</ar ...
- JSON字符串与Map互转
//一.map转为json字符串 public static String map2jsonstr(Map<String,?> map){ return JSONObject.toJSON ...
- json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值
一.json相关概念 json,全称为javascript object notation,是一种轻量级的数据交互格式.采用完全独立于语言的文本格式,是一种理想的数据交换格式. 同时,json是jav ...
- VBScript把json字符串解析成json对象的2个方法
这篇文章主要介绍了VBScript把json字符串解析成json对象的2个方法,本文通过MSScriptControl.ScriptControl和jscript实现,需要的朋友可以参考下 asp/v ...
- HttpServletResponse 返回的json数据不是json字符串,而是json对象
今天在改一个bug 情况: 在spring boot中写了一个类Result ,用来统一封装 各个API响应结果 , 其中重写了toString()方法来返回 json字符串 . 在正常情况下,从其它 ...
- json字符串转成 json对象 json对象转换成java对象
import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject; 依赖包 <dependency> ...
- js将json字符串转化成json对象的方法
js将json字符串转化成json对象的方法: JSON.parse(jsonObject)
- nodejs将JSON字符串转化为JSON对象
如何将JSON字符串转化为JSON对象? JSON.parse(str) JSON是javascript的一个内置对象,提供了转换JSON对象与字符串互相转换的方法: 问题来了,道理我都懂 ...
- 特殊字符导致json字符串转换成json对象出错
在对数据库取出来的数据(特别是描述信息)里面含有特殊字符的话,使用JSON.parse将json字符串转换成json对象的时候会出错,主要是双引号,回车换行等影响明显,左尖括号和右尖括号也会导致显示问 ...
随机推荐
- python 3.4.3 安装pygame
之前一直都是用的python3.5,后来接触了pygame,又被python3.5的打包折磨的死去活来,后来干脆用python 3.4.3. 我之前安装轮子都是直接打开cmd,然后 pip3 inst ...
- skyweaver 手把手教你写css3通用动画
之前接了几个微信里的项目,类似电子邀请函,什么分析报告这样的项目, 对css3动画要求十分高,每个页面客户几乎都有天马行空的想法,或者说设计师有这样的想法.众所周知css3里的keyframe写好了就 ...
- socket链接的关闭连接与close和shutdown的区别
TCP主动关闭连接 appl: close(), --> FIN FIN_WAIT_1 //主动关闭socket方,调用close关闭socket,发FIN <-- ACK FIN_WAI ...
- Google Protocol Buffer入门
简介 Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 ...
- Hibernate的CRUD配置及简单使用
参考博客:https://blog.csdn.net/qq_38977097/article/details/81326503 1.首先是jar包,可以在官网下载. 或者点击下面链接下载 链接:htt ...
- [SC] OpenSCManager 失败 5:拒绝访问
问题:[SC] OpenSCManager 失败 5: 网查这个错误信息指拒绝访问 权限不足 1.解决: 以管理员身份运行cmd,即可 查询这个提示是指什么错误时,看网上有很多文章写用下面这种方法, ...
- java.sql.SQLException: Unknown column 'user0_.user_name' in 'field list' 报错问题
报错信息: java.sql.SQLException: Unknown column 'user0_.user_name' in 'field list'Query is: select user0 ...
- tqdm模块
tqdm 是 Python 进度条库. tqdm库下面有2个类我们经常使用: 1. 2. 可以在 Python 长循环中添加一个进度提示信息用法:tqdm(iterator) trange(i) 是 ...
- 【转】java中的clone
java中的clone Clone&Copy 假设现在有一个Employee对象,Employee tobby =new Employee("CMTobby",5000), ...
- webpack打包工具之ts版开发框架搭建
本文用两个框架,一个是threejs,一个是phaser3,其实流程都是一样. nodejs.npm是基础,不再多说! 首先新建一个文件夹命名three-study,然后npm init -y 用we ...