首页主机资讯fastjson怎么解析复杂json数据

fastjson怎么解析复杂json数据

时间2023-12-25 16:18:03发布访客分类主机资讯浏览527
导读:要解析复杂的 JSON 数据,可以使用 Fastjson 提供的 JSONPath 表达式来筛选和提取需要的数据。 下面是一个示例,演示如何使用 Fastjson 解析复杂的 JSON 数据: import com.alibaba.fast...

要解析复杂的 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 方法可以获取嵌套的对象和数组中的元素。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: fastjson怎么解析复杂json数据
本文地址: https://pptw.com/jishu/579311.html
git创建branch的方法是什么 java怎么获取文件父路径

游客 回复需填写必要信息