Bootstrap

将Json格式的字符串转为Json格式对象提取其中的Value值

项目中遇到 要将返回的字符串(Json格式)再转为Json格式提取其中的 键值对 ,以下总结了两种办法。

第一种
思路是 转成 JSONObject的对象 
String jsonStr = "假设是Json格式的字符串";
JSONObject jsonobject = JSONObject.parseObject(jsonStr );
String s = jsonobject.getSttring("要提取的Json格式的字符串中的key值");

//如果是 Json格式的字符串里面键下还包含着键值对则用以下的方法
String jsonStr = "假设是Json格式的字符串";
JSONObject jsonobject = JSONObject.parseObject(jsonStr );
JSONObject key = jsonobject.getJSONObject("key");
String s = key.getSttring("要提取的Json格式的字符串中的key值"); 
第二种
思路是转成MapList集合
String jsonStr = "假设是Json格式的字符串";
Map map =(Map) JSONUtil.parse(jsonStr);
Object key = map.get("key");
第三种
[{"model":["123","456","789"]}]
    @RequestMapping("/send1")
    public ResuktInfo task1(){
        String s = "[{\"model\":[\"123\",\"456\",\"789\"]}]";
        String strip = StringUtils.strip(s, "[]");
        JSONObject jo = JSONObject.parseObject(new String(strip));
        Object modelV = jo.get("model");
        return ResuktInfo.succ("success",modelV);
    }
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.51</version>
</dependency>

<dependency>
	<groupId>org.apache.commons</groupId>
	<artifactId>commons-lang3</artifactId>
	<version>3.9</version>
</dependency>

参考博客
【1】java字符串转json
【2】com.alibaba.fastjson.JSONArray cannot be cast to com.alibaba.fastjson.JSONObject

;