我想我需要创建一个专家 ObjectMapper
并且找不到任何示例代码来启动该过程。
JSON 的创建者使用 .Net
和 public
属性,因此使用带有大写首字母的字段名称。我正在将 JSON 解析为 POJO,因此我想使用小写首字母。
最后:
public class Facet
{
public string Name { get; set; }
public string Value { get; set; }
}
因此,我必须有:
public class Facet {
public String Name;
public String Value;
}
我更喜欢:
public class Facet {
public String name;
public String value;
}
这可以用 ObjectMapper
完成吗?
最佳答案
您的第一个问题可以通过 @JsonProperty
注释非常简单地解决:
// java-side class
public class Facet
{
@JsonProperty("Name")
public String name;
@JsonProperty("Value")
public String value;
}
现在 ObjectMapper
将匹配不同大小写的字段名称。如果你不想在你的类中添加注释,你可以创建一个 Mix-in 类来代替你的Facet
:
public class FacetMixIn
{
@JsonProperty("Name")
public String name;
@JsonProperty("Value")
public String value;
}
objectMapper.getDeserializationConfig().addMixInAnnotations(Facet.class, FacetMixIn.class);
这将实现相同的效果,而无需在 Facet
类中添加额外的注释。
关于java - 使用 ObjectMapper 更改字段大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12427167/