提供允许多个值的Hibernate Validator的值
-
14-11-2019 - |
题
我有一个vibernate验证器,用于针对给定的字符串列表验证字段。我将提出更好的清晰度。
@Target({ METHOD, FIELD, ANNOTATION_TYPE })
@Retention(RUNTIME)
@Constraint(validatedBy = AllowedValuesValidator.class)
@Documented
public @interface AllowedValues {
...
String[] value();
}
.
以前我们用它用作
@AllowedValues("value1")
private String method;
.
现在我们需要在一系列值范围内使用它,方法可以具有多个值。我尝试过:
@AllowedValues("Standard", "One-Day", "Two-Day", "Three-Day")
private String method;
.
和
@AllowedValues("Standard, One-Day, Two-Day, Three-Day")
private String method;
.
首先,不编译,第二个将整个字符串作为允许的值(显而易见)。
如何在此处指定多个值的任何想法?
解决方案
Since it's a String[]
, you need to use array initializer syntax for multiple values:
@AllowedValues({"Standard", "One-Day", "Two-Day", "Three-Day"})
不隶属于 StackOverflow