如何将 JSONObject 强制转换为自定义 Java 类?

2022-09-01 16:49:40

在Java中(使用json-simple),我已经成功解析了一个JSON字符串,该字符串是使用JSON.stringify在JavaScript中创建的。它看起来像这样:

{"teq":14567,"ver":1,"rev":1234,"cop":15678}

此字符串存储自定义 JavaScript 对象的状态,我现在希望将其重新构成为纯 Java 类。它并不顺利 - 第一次涉足来自C#背景的Java。8-2

该对象目前采用 org.json.simple.JSONObject 的形式,因为这是 json-simple 从 JSONParser.parse() 操作中制作的。

如何将此 JSONObject 转换为我的新 Java 类?(其定义如下...)

public class MyCustomJSObject {
    public int teq;
    public int ver;
    public int rev;
    public int cop;
}

答案 1

https://github.com/google/gson 添加依赖项,并像这样使用它

Gson gson= new Gson();
CustomPOJOClass obj = gson.fromJson(jsonObject.toString(),CustomPOJOClass.class);

答案 2

使用杰克逊图书馆

    //create ObjectMapper instance
    ObjectMapper objectMapper = new ObjectMapper();

    //convert json string to object
    Employee emp = objectMapper.readValue(jsonData, Employee.class); 

推荐