bean验证获得验证组

时间:2013-06-29 22:25:09

标签: java bean-validation

是否可以通过?

获取验证方法中的组。

我有多个组(创建,更新,删除),这些组最常导致对一个bean进行类似的验证 我没有提供多个几乎相同的验证器(并创建实用程序函数来外化相同的验证代码),而是希望有一个Validator来处理有关调用验证的组的验证。

在最坏的情况下,我有3次n个验证器和n实用程序类用于共享代码,而不仅仅是n个验证器。

Validator.validate(Object, Class<?> ... groups)

如何让我的Validator中的这些组做一些像伪一样的事情?

if (groups.contains(Create.class)) // validate create stuff

1 个答案:

答案 0 :(得分:1)

如果您询问如何在自定义约束(ConstraintValidator实现)中确定当前已验证的约束,则答案是您不能。

组和约束的概念是正交的。根据经过验证的组,约束的行为不应该有所不同。

在此上下文中,考虑约束的用户。如果验证是有条件的,他们如何知道他们的约束是什么?