一尘不染

在@Constraint中清空validatedBy

java

我注意到,所有内置约束的中的validatedBy参数都有一个空值@Constraint。即@Constraint(validatedBy = {})

首先,为什么允许它们的值为空validatedBy?我以为您可以仅对不需要附加验证的约束组合将其留空?

另外,请注意,尽管的validatedBy值为空,但Hibernate
Validator仍可以为每个内置约束找到一个验证器实现类,但是如果我为约束将validatedBy留为空白,则我的自定义验证器将永远不会被使用。这是为什么?

谢谢。


阅读 236

收藏
2020-12-03

共1个答案

一尘不染

那些内置程序以特定于实现的特殊方式处理,并且其验证器以编程方式进行配置。

对于Hibernate
Validator,它已在中完成ConstraintHelper.java。我认为您无法针对自定义约束实现相同的目标。

2020-12-03