java - JSON 到 GSON 和 POJO 类

标签 java json parsing gson pojo

我有一个如下所示的 JSON 响应:

{
"号码":"123456789101112",
"尺寸":"{\"高度\":\"8.200\",\"宽度\":\"18.800\",\"深度\":\"9.400\"}",
"uom":"厘米"
}

我正在使用以下内容从 JSON 转换为 GSON

Gson gson = new Gson();
详细信息详细信息 = gson.fromJson(JSONresponse, Details .class);

我想知道如何将 JSON 响应映射到我的 pojo 类中,以便将此 JSON 转换为 GSON 并检索各个值。

我想知道如何从响应中获取高度、宽度、深度。这是我当前的详细信息类:

公开课详情

{

private String number;

private String dimensions;

private String uom;

public void setNumber(String number){
    this.number = number;
}
public String getNumber(){
    return this.number;
}
public void setDimensions(String dimensions){
    this.dimensions = dimensions;
}
public String getDimensions(){
    return this.dimensions;
}
public void setUom(String uom){
    this.uom = uom;
}
public String getUom(){
    return this.uom;
}

}

最佳答案

我会将您的 POJO 建模为:

public class Details {
    private Integer number;
    private Dimension dimensions;  // lowercase according to Java naming conventions
    private String uom;

    // getters and setters
}

public class Dimension {
    private String height;
    private String width;
    private String depth;

    // getters and setters
}

然后只需使用您当前的(正确的)代码,然后访问您想要的任何字段:

Gson gson = new Gson();
Details details = gson.fromJson(JSONresponse, Details.class);
String height = details.getDimensions().getHeight();

关于java - JSON 到 GSON 和 POJO 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61264859/

相关文章:

java - 错误 java.lang.OutOfMemoryError : GC overhead limit exceeded

java - FireStore 日期查询未按预期工作

json - 将 Ghost 导出到 Wordpress

c# - C 和 C# 中的字符串解析器

python - 在 Python 中使用 Beautiful Soup 解析 HTML 表

c# - 在词法分析器/解析器中使用 Goto

java - 当使用 JtaTransactionManager 时,为什么使用 EntityManager 进行的 JPA 更改未在 Spring 服务中提交?

ios - 在 JSON 字符串中添加反斜杠 "\"用于 swift 中的 Web 服务

mysql - 删除 JSON 键中的前导和尾随空格

java - 在 Java 中使用 API 进行翻新