Доступ к значениям свойств в аннотациях - PullRequest
1 голос
/ 12 декабря 2011

Я хочу получить доступ к значению свойства в моей аннотации в качестве значения атрибута.

Например в моем файле свойств у меня есть выражение записи: 3/10 * * * * ?.

В моем классе Планировщика я использую аннотацию @Scheduled (cron = "**VALUE**"). Я хочу прочитать это значение из файла свойств, соответствующего ключу выражения.

Попытка сделать это с @Value, но возвращает тип Value, который не может быть преобразован в String.

Ответы [ 2 ]

2 голосов
/ 19 марта 2012

С весны 3.0.1 вы можете сделать это так @Scheduled (cron = "$ {rate.refresh.cron}")

См. http://forum.springsource.org/showthread.php?83053-Feature-Scheduled-with-Value-cron-expression

Однако вы не можете сделать это для fixDelay и fixRate из-за проблемы приведения типов (fixDelay ожидает значение в long, в то время как аннотация возвращает только String). Проверьте комментарии Марка в https://jira.springsource.org/browse/SPR-6670

0 голосов
/ 12 декабря 2011

Вы можете попробовать использовать APT (инструмент обработки аннотаций), чтобы заменить значение в аннотации значением из файла свойств.

...