如何使用 Hibernate 验证器有条件地验证字段?

How to conditionally validate fields with Hibernate validator?

我想实现登录/创建账户功能。我声明了 class 'Member' 并设置了字段 'id'、'name'、'password.' 我想使用 hibernate-validator 来验证字段。在这里我有一个问题。创建帐户时,您需要输入所有三个字段。所以我为所有字段设置了@NotBlank。但是当你登录时,你不输入名称字段。因此,当您尝试登录时,您总是会收到错误消息。我该如何解决这个问题?

我考虑过在您登录时添加虚拟字符,但这很棘手。还有其他解决方案吗?

如前所述,条件验证可以通过验证组得到。

我们的参考文档为您提供了所有详细信息:https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#chapter-groups .

组可能有点棘手,但考虑到您的简单用例,它应该很容易实现。