Я использую Spring Boot и проверку javax, особенно @Size. Я пытаюсь захватить значение ограничений по размеру из файла application.properties:Использование Spring @Value внутри @Size
@Size(min= @Value("${device.name.minsize}"), [email protected]("${device.name.maxsize}"))
private String name;
Но я получаю следующую ошибку компиляции времени:
Error:(26, 16) java: annotation not valid for an element of type int
Попытку решить эту проблему, я пытающийся следующее:
@Size(min=Integer.parseInt(@Value("${device.name.minsize}")), max=Integer.parseInt(@Value("${device.name.maxsize}")))
Но у этого есть несколько ошибок.
Как можно правильно преобразовать аннотации @Value? Я возглавил неверный путь? Что я ищу - это чистый способ вытащить ограничения по размеру из кода и в конфигурацию, с которой я могу получить доступ к серверной стороне и в моем шаблоном angularJS/html.
Обе ссылки полезны, но не совсем то, что мне нужно. Я действительно ищу способ вытащить «магические числа» моей проверки на место, доступное как с передней, так и с задней стороны. Для внешнего интерфейса я мог даже использовать файлы шаблонов и вводить магические значения. – cmaynard
Пошел вперед и отметил это как правильно, так как основной ответ «Нет, вы не можете этого сделать» - это правда. – cmaynard