在POJO中验证JSON

use*_*188 7 java json

在POJO中使用注释验证JSON的最佳/首选方法是什么?我希望能够区分POJO的可选字段和必填字段.我希望能够为POJO的必填字段提供默认值.

例:

@JsonTypeInfo(use=Id.NAME, include = As.WRAPPER_OBJECT)
@JsonTypeName("Foo")
public class MyClass{
    @JsonProperty
    private String someOptionalField;
    @JsonProperty
    private String someRequiredField;
    @JsonProperty
    private String someRequiredFieldThatIsNotNull;
    @JsonProperty
    private int someRequiredFieldThatIsGreaterThanZero;
    // etc...
}
Run Code Online (Sandbox Code Playgroud)

And*_*hev 1

一种可能的方法是将 JSON 反序列化为对象,并使用链接的验证 API @MattBall 验证对象。优点是该逻辑与存储逻辑分离,您可以自由更改存储逻辑,无需重新实现验证。

如果您想验证 JSON,您可能需要查看JSON schema