Я могу проверить длину строки с аннотацией вроде:
@Length(max = 255)
Но что, если я хочу убедиться, что длина равна 5 или 9? Можно ли это сделать с помощью аннотации?
Попробуйте @Pattern (regex = ". {5} |. {9}") (измените точку на другой класс символов, если вы не хотите соответствовать всем.
Вот документация для реализации пользовательского ограничения .
Все просто:
Так что, возможно, ваша аннотация может выглядеть так:
@Constraint(validatedBy=YourChecker.class) //other annotations public @interface AllowedValues { int[] value(); }