如何使用javax.validation在类的所有字段上应用@NotNull约束?

7
我正在使用javax.validation的hibernate实现,并想知道是否有人能够将@NotNull约束注释应用于类的所有字段,而不是每个单独的字段?
我希望在整个项目中强制执行@NotNull约束作为默认值,以避免在每个字段上添加@NotNull注释。理想情况下,最好定义一个自定义约束“@MayBeNull”,以注释任何可能为空的字段。
1个回答

5

在您的情况下是否有必要对所有字段进行空值验证?例如基本类型如int,long等。

无论如何,Bean Validation并没有提供您所要求的功能。您可以编写一个自定义的类约束@MyNotNull,通过反射验证所有字段是否为空值。个人建议不这样做。


谢谢 Hardy。我尝试编写自定义验证器。虽然像你建议的那样是可能的,但我现在倾向于认为这不是最优雅的解决方案。我认为它所增加的便利不足以作为优势。通过在类级别上进行自定义验证的一个缺点是失去了识别和报告哪些字段被错误地设置为空值的能力。现在我将坚持使用显式字段级别的注释。 - Paco

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接