如何禁止null作为json4s反序列化中的值

时间:2015-08-26 23:17:14

标签: scala jackson json4s

我将数据从json反序列化为case类,只是遇到了一些格式错误的json,为null提供了一个非可选对象。我希望这是解析器失败,而不是将字段值设置为null。这样我就可以安全地假设我的案例类在解析时已正确填充,但我似乎找不到为此配置解析器的方法。

2 个答案:

答案 0 :(得分:0)

可以初始化具有空值的字段,然后使用" @JsonInclude(Include.NON_NULL)"如果没有为其分配任何值,则在反序列化时忽略该字段。

您可以检查字段是否存在,并将其解释为null。

答案 1 :(得分:0)

你可以使用Jackson解串器看看:

Deserialization sample

Another Deserialization sample

您还可以反序列化字段:

@JsonDeserialize(using = SomeDeserializer.class)
private String definition;

而不是在Deserializer中进行验证。