【问题标题】:Change JSON key without changing variable name in POJO [duplicate]更改 JSON 键而不更改 POJO 中的变量名 [重复]
【发布时间】:2018-01-26 23:34:05
【问题描述】:

我有一个类定义说

class Employee {
 String id;
 String name;
 int age;
 //getters and setters
}

我想创建一个json对象如下

{
  "id" : "A12",
  "employee_name" : "Abhishek"
  age : 97
}

注意employee_name 不对应 POJO 变量name。那么我可以添加某些有助于我这样做的注释吗?有点像

@JSONKey(value="employee_name")
String name

提供与 GSON 和/或 Jackson 相关的解决方案。

【问题讨论】:

    标签: java json jackson gson


    【解决方案1】:

    Jackson 中使用@JsonProperty

    例如:

    @JsonProperty(value="employee_name")
    String name
    

    GSON 一起使用@SerializedName

    @SerializedName(value="employee_name")
    String name
    

    【讨论】:

      【解决方案2】:

      使用 Gson,您可以使用 @SerializedName 注释

      @SerializedName("employee_name")
      String name;
      

      【讨论】:

        【解决方案3】:

        您可以将@JsonProperty 用于杰克逊:Change field name in JSON using Jackson

        对于 Gson,@SerializedNameConvert JSON style properties names to Java CamelCase names with GSON

        【讨论】:

          猜你喜欢
          • 2019-01-01
          • 2018-11-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-02-24
          • 2017-08-05
          • 2012-10-17
          • 1970-01-01
          相关资源
          最近更新 更多