如何使用javax.validation库对类强加共同约束?

时间:2016-02-23 12:24:13

标签: java bean-validation

我正在使用Bean Validation约束来在运行时验证类实例。我有很多DTO,每个DTO都有多个字段,通常有一个共同的约束。我想为类添加一个约束,以便它适用于类的所有属性。 (作为lombok @NotNull约束)。

e.g

class Person {
@NotNull
private String name;
@NotNull
private String address;
@NotNULL
private String contact;
}

我想做到这样的事。

@NotNull
class Person {
private String name;
private String address;
private String contact
}

1 个答案:

答案 0 :(得分:0)

使用纯Bean验证无法执行此操作。因此,只需在课程中添加@NotNull即可。

一种可能的方法是利用XML配置。我们的想法是拥有自己的注释MyNotNull。您的框架需要扫描这些注释并为相关类构建编程配置。这可以例如在编译期间通过注释处理器完成。获得约束映射XML文件后,将它们添加到jar并在 validation.xml 中引用它们。这只是一个基本想法。就个人而言,我不确定是否值得付出努力。