2016-08-30 2 views
1

При определении свойств в YAML для приложения Spring Boot 1.4 я должен использовать файл main/resources/application.yaml. Все идет нормально.Определение зависимых от профиля свойств YAML в Spring Boot 1.4

Как я могу переопределить эти зависимости с помощью YAML в зависимости от конкретного профиля при запуске или тестировании приложения.

ответ

0

При использовании Spring Boot 1.4 (это также относится к версии 1.3). Свойства YAML всегда определяются в файле main/resources/application.yaml. В зависимости от выбранного профиля свойства могут быть переопределены другим набором свойств.

Чтобы переопределить эти свойства для теста, файл YAML должен быть указан в файле /test/resources/application-.yaml, где заменяется активным профилем. Важно видеть, что профиль всегда должен быть задан, даже если активный профиль отсутствует. В этом случае профиль «по умолчанию».

Чтобы переопределить свойства при запуске приложения, свойства могут быть переопределены для определенного профиля, используя файл main/resources/application-.yaml. Даже для этой ситуации, если профиль не задан, профиль для имени файла «по умолчанию».

Пример

Example of YAML file structure for Spring Boot

Тест класс Spring14ApplicationTests.java для Spring ботинке 1.4 имеет следующее определение

@RunWith(SpringRunner.class) 
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) 
public class Spring14ApplicationTests { 
    … 
} 

Для Spring ботинке 1.3, тот же файл имеет следующее определение

@RunWith(SpringJUnit4ClassRunner.class) 
@SpringApplicationConfiguration(classes=SpringDb14Application.class) 
@WebAppConfiguration 
public class SpringDb14ApplicationTests { 
    ... 
}