java – 为允许多个值的hibernate验证器提供值
作者:互联网
我有一个Hibernate验证器,它根据给定的字符串列表验证字段.我会把代码放在更清晰的位置.
@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;
第一个不编译,第二个将整个字符串作为允许值(这很明显).
任何想法如何在这里指定多个值?
解决方法:
因为它是String [],所以需要对多个值使用数组初始化器语法:
@AllowedValues({"Standard", "One-Day", "Two-Day", "Three-Day"})
标签:hibernate-validator,java 来源: https://codeday.me/bug/20190826/1731267.html