我只是想知道如何在POJO上实现自定义验证或任何其他解决方案。我的POJO已以多种方式使用,其中我不需要任何类型的验证(例如@NotBlank等)。但是,如果我想更新其中的至少一个字段,则存在一种情况。然后验证它。
在请求正文中提供了我的POJO,我想验证是否提供了其中一个字段,然后接受请求,否则不接受。到目前为止,我已经以硬编码的方式实现了它。但是我想要春天靴子提供的东西。

我的pojo在下面

public class Person {

    private String name;
    private String age;
    private String email;
    //etc .etc. getters and setters
}


现在,如果我想更新一个人,我想验证请求正文中是否提供了单个字段,然后接受有效负载,否则将引发约束冲突。

到目前为止,我已经完成了硬编码,即

private boolean isInValid(Person per) {
        if (per == null) {
            return true;
        }

        int changes = 0;
        changes = changes + (StringUtils.isBlank(per.getName()) ? 0 : 1);
        changes = changes + (StringUtils.isBlank(per.getEmail()) ? 0 : 1);
//etc etc...
        return changes == 0;
    }


我想要Spring Boot提供的东西。

谢谢

最佳答案

如果标准Hibernate Validator检查不够,您可以使用自定义逻辑implement your own validators

10-07 23:54