У меня есть приложение загрузки весны, которое имеет множество свойств, определенных в файле .yml
. Я отхожу от наличия свойств в файле, чтобы иметь их в облаке, поэтому для этого я использую функцию key/value в консуле весеннего облака.Правильный способ загрузить значения/свойства из spring cloud consul
Я могу получить значение для данного ключа от консула, но единственный способ, который я видел документирован и только так, как я были в состоянии сделать это, как так:
@Autowired
private Environment env;
@RequestMapping("/test")
String home() {
return env.getProperty("test.property");
}
Это нормально и денди, но у меня есть некоторые существующие классы, которые до сих пор, установленные для загрузки свойства по-старому:
@Value("${test.property}")
String testProperty;
После добавления зависимости для весны облака консула в мой проект, я получаю новые ошибки сказать, что все эти свойства не могут быть решена. Я предполагаю, что это потому, что весенняя загрузка видит зависимость консула и либо игнорирует файл yml, либо его части.
Есть ли способ загрузить эти свойства из консула без необходимости менять код в классах? Или мне нужно будет изменить эти классы, чтобы следовать примеру, который использует объект env
?
Также будет оценено любое дальнейшее понимание того, как консул весеннего облака работает с пружинным ботинком для этой конкретной цели. На нем не так много документации.
Если вы используете его с клиентом Spring Cloud Config, то '@ Value' должен просто работать. –
@ M.Deinum Я не, я использую Spring Cloud Consul – Seephor
Это серверная сторона, консул весеннего облака может легко интегрироваться с конфигурацией весеннего облака, а затем вы получаете из коробки то, что хотите. См. Http://cloud.spring.io/spring-cloud-consul/spring-cloud-consul.html (последний раздел). –