首页 > 其他分享 >spring boot——json解析示例——fastjson

spring boot——json解析示例——fastjson

时间:2023-01-31 21:13:21浏览次数:47  
标签:fastjson index String 示例 spring title System println out

多层嵌套JSON类型数据解析

简单来说:

“key”:“value” --> 此时value为String

 


“key":0 --> 此时value为int

 


“key”:{“k1”:“v1”} --> 此时value为JSONObject

 


“key”:[v] --> 此时value为JSONArray

 

 

=======================================================================================

 

 

 

 

 

 

 

========================================================================================

 

 

 

{
    "error": 0,
    "status": "success",
    "results": [
        {
            "currentCity": "青岛",
            "index": [
                {
                    "title": "穿衣",
                    "zs": "较冷",
                    "tipt": "穿衣指数",
                    "des": "建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。"
                },
                {
                    "title": "紫外线强度",
                    "zs": "中等",
                    "tipt": "紫外线强度指数",
                    "des": "属中等强度紫外线辐射天气,外出时建议涂擦SPF高于15、PA+的防晒护肤品,戴帽子、太阳镜。"
                }
            ]
        }
    ]
}

 

 

 

 

package org.example.common;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

public class TestJson002
{
    public static void main(String[] args)
    {

        String s = "{\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青岛\",\"index\":[{\"title\":\"穿衣\",\"zs\":\"较冷\",\"tipt\":\"穿衣指数\",\"des\":\"建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。\"},{\"title\":\"紫外线强度\",\"zs\":\"最弱\",\"tipt\":\"紫外线强度指数\",\"des\":\"属弱紫外线辐射天气,无需特别防护。若长期在户外,建议涂擦SPF在8-12之间的防晒护肤品。\"}],}]}";

        //把字符串转换为json对象
        JSONObject jsonObject = JSONObject.parseObject(s);

        System.out.println("-------------------------------------------1");


        //验证是否包含某个key
        Boolean a = jsonObject.containsKey("error");
        System.out.println(a);

        Boolean b = jsonObject.containsKey("errorbd");
        System.out.println(b);


        System.out.println("-------------------------------------------2");

        //提取出error为 0
        int error = jsonObject.getIntValue("error");
        System.out.println("error:" + error);

        System.out.println("-------------------------------------------3");


        //提取出status为 success
        String status = jsonObject.getString("status");
        System.out.println("status:" + status);

        System.out.println("-------------------------------------------4");




        //注意:results中的内容带有中括号[],所以要转化为JSONArray类型的对象
        JSONArray result = jsonObject.getJSONArray("results");

        for (int i = 0; i < result.size(); i++)
        {

            //提取出currentCity为 青岛
            String currentCity = result.getJSONObject(i).getString("currentCity");

            System.out.println("currentCity:" + currentCity);

            //注意:index中的内容带有中括号[],所以要转化为JSONArray类型的对象
            JSONArray index = result.getJSONObject(i).getJSONArray("index");

            for (int j = 0; j < index.size(); j++)
            {

                String title = index.getJSONObject(j).getString("title");
                System.out.println("title:" + title);

                String zs = index.getJSONObject(j).getString("zs");
                System.out.println("zs:" + zs);

                String tipt = index.getJSONObject(j).getString("tipt");
                System.out.println("tipt:" + tipt);

                String des = index.getJSONObject(j).getString("des");
                System.out.println("des:" + des);

            }
        }
        

    }

}

 

 

 

 

 

 

 

 

 

执行结果:

 

 

 

 

 

 

引入依赖:

 

        <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.72</version>
        </dependency>

 

标签:fastjson,index,String,示例,spring,title,System,println,out
From: https://www.cnblogs.com/xiaobaibailongma/p/17080766.html

相关文章