我在验证嵌套模型时遇到问题,请看:
class A{
@NotNull
Integer i;
B b;
}
class B{
@NotNull
Integer j;
}
在 Spring Controller 中:
@Valid @RequestBody...
它正确验证
i
,但不验证 j
.如何强制 Spring 验证任意深度?第二件事:
是否可以进行以下验证:类“A”的对象仅适用于
i
之一j
是 null
.class A{
Integer i;
Integer j;
}
最佳答案
支持对象图验证,您必须注释 B b
与 @Valid
像下面。
class A{
@NotNull
Integer i;
@Valid
B b;
}
请引用https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/?v=5.3#section-object-graph-validation更多细节。
对于问题的第二部分,您可以创建一个自定义 Validator 类。您还需要为该 validator 自定义注释。您可以在文档页面 here 查看详细信息.自定义 validator 的示例是 here .
关于java - Spring Boot 中的验证嵌套模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41005850/