Springboot, как загрузить свойства из пользовательских YML - PullRequest
0 голосов
/ 30 мая 2018

У меня есть свойство bean (пример):

@Data
public class MyProperty {
    private String name;
    private String address;
}

, и у меня есть собственный файл yml в classpath с именем: my_property.yml

my.property:
  name: testName
  address: testAddress

Как загрузить этот файл вбоб моей собственности?Не используется @PropertyResource, потому что я хочу использовать файл yml.Спасибо.

Ответы [ 3 ]

0 голосов
/ 30 мая 2018

Follow: http://www.baeldung.com/spring-yaml

Относительный путь к application.yml файлу /myApplication/src/main/resources/application.yml.

и доступ:

@Autowired
private YAMLConfig myConfig;

Я положил application.properties файл в src/main/resources/ Конец моего @SpringBootApplication чтения.

файл application.properties

spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=***
spring.datasource.username=***
spring.datasource.password=***
0 голосов
/ 30 сентября 2018

@PropertySource - это способ включения внешних / пользовательских свойств, но, к сожалению, он не работает с файлами yaml из-за этой проблемы .

Вам необходимо загрузить эти файлы yaml всвой собственный, просто написав EnvironmentPostProcessor и добавив его META-INF/spring.factories.

. Это описано в документации Spring (небольшая разница между версиями).
Spring boot 1.5.x
Пружинный башмак 2.x

0 голосов
/ 30 мая 2018

Есть два свойства, которые вы можете посмотреть -

  1. spring.config.name - если вам не нравится приложение в качестве имени файла, например, -

      java -Dspring.config.name = my_property myjar.jar
    
  2. spring.config.location - чтобы узнать, где находятся ваши файлы

Более подробная информация хорошо документирована здесь

springдокументация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...