117.info
人生若只如初见

fastjson怎么解析复杂json数据

要解析复杂的 JSON 数据,可以使用 Fastjson 提供的 JSONPath 表达式来筛选和提取需要的数据。

下面是一个示例,演示如何使用 Fastjson 解析复杂的 JSON 数据:

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

public class Main {
    public static void main(String[] args) {
        // 复杂的 JSON 数据
        String jsonString = "{\"name\":\"John\",\"age\":30,\"address\":{\"street\":\"123 Main St\",\"city\":\"New York\"},\"pets\":[{\"name\":\"Fluffy\",\"type\":\"cat\"},{\"name\":\"Spot\",\"type\":\"dog\"}]}";

        // 解析 JSON 数据
        JSONObject jsonObject = JSON.parseObject(jsonString);

        // 获取简单的属性
        String name = jsonObject.getString("name");
        int age = jsonObject.getIntValue("age");

        System.out.println("Name: " + name);
        System.out.println("Age: " + age);

        // 获取嵌套的属性
        JSONObject address = jsonObject.getJSONObject("address");
        String street = address.getString("street");
        String city = address.getString("city");

        System.out.println("Street: " + street);
        System.out.println("City: " + city);

        // 获取数组中的元素
        JSONArray pets = jsonObject.getJSONArray("pets");

        for (int i = 0; i < pets.size(); i++) {
            JSONObject pet = pets.getJSONObject(i);
            String petName = pet.getString("name");
            String petType = pet.getString("type");
            System.out.println("Pet " + (i + 1) + ": " + petName + " (" + petType + ")");
        }
    }
}

以上代码会输出以下结果:

Name: John
Age: 30
Street: 123 Main St
City: New York
Pet 1: Fluffy (cat)
Pet 2: Spot (dog)

这个例子中的 JSON 数据包含了嵌套的对象和数组。使用 Fastjson 的 getXXX 方法可以获取简单的属性,使用 getJSONObjectgetJSONArray 方法可以获取嵌套的对象和数组中的元素。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe35bAzsLAwVXBlE.html

推荐文章

  • fastjson怎么读取json文件

    使用fastjson库读取JSON文件的步骤如下: 导入fastjson库的相关类和方法。
    使用java.io包中的FileReader类读取JSON文件。
    创建一个JSONReader对象,将...

  • python怎么读取json文件内容

    要读取 JSON 文件的内容,可以使用 Python 的内置 json 模块。下面是一个读取 JSON 文件的示例:
    import json # 打开 JSON 文件
    with open('file.json...

  • git怎么删除本地仓库某个文件

    要删除本地仓库某个文件,可以使用以下命令:
    git rm 其中,是要删除的文件的路径。如果文件在当前目录下,可以直接指定文件名。如果文件在子目录中,需要指...

  • java怎么获取properties文件内容

    Java可以使用java.util.Properties类来获取properties文件的内容。
    以下是获取properties文件内容的示例代码:
    import java.io.FileInputStream;

  • python中怎么用hist函数绘制直方图

    在 Python 中,可以使用 matplotlib.pyplot.hist() 函数绘制直方图。下面是一个简单的示例:
    import matplotlib.pyplot as plt # 创建示例数据
    data =...