作为示例类:
@Getter @Setter
public static class SomeClass {
private String notNull;
private String nullSetEmpty;
private String notExists;
}
的反序列化 null
可以通过重写配置将值设置为空,例如:
String json = " {\"notNull\": \"a value\", \"nullSetEmpty\": null}";
ObjectMapper om = new ObjectMapper();
om.configOverride(String.class)
.setSetterInfo(JsonSetter.Value.forValueNulls(Nulls.AS_EMPTY));
SomeClass sc = om.readValue(json, SomeClass.class);
System.out.print(om.writerWithDefaultPrettyPrinter().writeValueAsString(sc));
这将产生:
{
"notNull" : "a value",
"nullSetEmpty" : "",
"notExists" : null
}
但是这个怎么样 notExists
. 可以为每个有问题的类添加默认值,但是有没有像这样的通用方法 configOverride
那Jackson能处理吗?
1条答案
按热度按时间kmbjn2e31#
您可以在数据类中定义默认值