自定义bean验证

时间:2017-06-17 10:07:19

标签: java spring-boot bean-validation jsr

我正在使用spring-boot开发应用程序。我想使用JSR注释验证用户bean。问题是我有一些领域取决于他人的价值。例如,当status =“user_pr”时,我必须将地址,县和phoneNumber设为必填项。

这是我的豆子:

 @JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class User {

    @NotNull(message = "required")
    private String status;

    @JsonProperty("first_name")
    @NotNull(message = "required")
    private String firstName;

    @NotNull(message = "required")
    private String name;

    @NotNull(message = "required")
    @Pattern(message = "Email not valid", regexp = "^([\\w\\.\\-_]+)?\\w+@[\\w-_]+(\\.\\w+){1,}$")
    private String mailAddress;

    private String country;
    private String phoneNumber;

    @JsonProperty("address")
    private Address billingAddress;
}

你有什么想法吗?

祝你好运

1 个答案:

答案 0 :(得分:0)

几周前我遇到了同样的问题,我使用自定义验证逻辑创建了自己的验证注释。您可以在我的存储库中找到展示项目:ConditionalValidator。 如果您有任何疑问,请询问。