3

这可能看起来是一个愚蠢的问题,但我想将 JSON 对象反序列化为MyObject带有名为 的字段的 POJO class,这是 Java 中的保留关键字...如果可能,我想保留MyObjectJackson/Json/Whatever-dependency自由。

我是否需要向我的类字段成员添加(标准或杰克逊特定的)Java 注释来处理这个问题?或者是否有另一种解决方法来拥有一个“纯”java 对象?如果需要,我可以配置 Jackson 对象映射器。

public class MyObject {
  public String field1;
  public String class; // FAIL
}
4

1 回答 1

8

由于class是保留的 Java 关键字,因此您不能直接使用它。如果您只是希望生成的 JSON 具有它,请使用@JsonProperty并设置其value属性。

public class MyObject {
    public String field1;

    @JsonProperty(value = "class")
    public String clazz; 
}
于 2013-09-03T17:38:38.430 回答