Сервер облачной конфигурации с внешним файлом и приложением для весенней загрузки

Я создаю личный репозиторий на Git, где хранил свой файл свойств. Я создаю сервер облачной конфигурации (my-config-server) и использую URL-адрес репозитория git. Я связал свое приложение с весенней загрузкой, которое должно получать доступ к файлу внешних свойств с репозиторием Git.

Проблема: до использования файла внешних свойств мой файл внутренних свойств находился по адресу: src / main / resources, и я обращался к нему в своем приложении, используя

@PropertySource("classpath:myproperties.properties)

Но после использования облачного сервера конфигурации, какие все изменения я должен внести, чтобы мое приложение с весенней загрузкой понимало, что теперь оно должно получать свойства из репозитория git?

я добавил

services
   - my-config-server

в manifest.yml я добавил @EnableConfigServer и @RefreshScope

Что еще нужно сделать? Что делать с

 @PropertySource("classpath:myproperties.properties)

person Tiya    schedule 08.05.2017    source источник


Ответы (1)


Вы должны заменить файл myproperties.properties файлом bootstrap.yml, который содержит URL-адрес вашего репозитория git:

spring:
  cloud:
    config:
      server:
        git:
          uri: https://github.com/spring-cloud-samples/config-repo

Затем в репозитории вы должны переименовать myproperties.properties в application.properties. Чтобы получить доступ к своим свойствам, используйте _ 6_, например:

@Value("${my.color}")
private String myColor;

Прочтите справочник по Spring Cloud Config подробнее.

person Ortomala Lokni    schedule 08.05.2017
comment
Спасибо. Несколько вопросов: 1. Для доступа к свойствам я использую import org.springframework.core.env.Environment; @Autowired public Environment env; env.getProperty (foo.bar); потому что мне нужно динамически передать свойство и получить его значение. Будет ли ваша логика работать с env.getProperty ()? - person Tiya; 08.05.2017
comment
2. в bootstrap.yml значение: spring: cloud: config: server: git: uri: ssh: //[email protected]: 7999 / user / gaia.git работает? Это uri репозитория .git. 3. Если я заменю myproperties на application.properties, каким должно быть имя моего файла внешних свойств? application.properties или myproperties? - person Tiya; 08.05.2017
comment
1. Да 2. Да 3. bootstrap.yml заменит файл в пути к классам, а application.properties будет сохранен в репозитории git. - person Ortomala Lokni; 08.05.2017