【发布时间】:2020-04-14 11:15:27
【问题描述】:
我正在使用 ObjectMapper (Jackson) 将我的 API JSON 响应映射到 Java 对象。下面是我的 json 的样子:
[
{
firstKey : "value1",
secondKey : "value2",
thirdKey : "value3"
},
{
firstKey : "value4",
secondKey : "value5",
thirdKey : "value6"
}
]
必填字段是: 第一键 第二键 第三键
我的一些 JSON 响应可能没有所有这三个必填字段,我希望 Jackson 在反序列化时抛出异常。我应该如何让杰克逊知道必填字段?是否有任何注释,除了 JsonProperty(required = true) 因为这不起作用?
另外,如果一个键有空值,它被接受为默认值,所以我也不能使用@NotNull。例如: [ { 第一键:空, 第二键:“值2”, 三键:“值3” } ] 以上是有效的 JSON,应该在反序列化过程中无任何异常地解析。
【问题讨论】:
-
并非如此。你有反序列化的例子吗?
标签: java json validation jackson jackson-databind