Вопрос проверяет практическое знание Spring Boot и его соглашений по конфигурации.
Spring Boot поддерживает профильные файлы конфигурации.
Для каждого профиля используется свой application-{profile}.yml.
Активный профиль определяет, какой файл будет подгружен.
Общая конфигурация остается в application.yml.
Spring Boot упрощает работу с конфигурациями, следуя принципу convention over configuration.
Обычно используется такая схема:
application.yml — общие настройки
application-dev.yml — настройки для разработки
application-test.yml — настройки для тестов
application-prod.yml — настройки для продакшена
Spring Boot:
Всегда загружает application.yml
Поверх него применяет профильный файл
# application.yml
server:
port: 8080
# application-prod.yml
server:
port: 80
Профиль можно задать:
JVM параметром
Переменной окружения
В Docker / CI
Профильная конфигурация переопределяет общую
Можно комбинировать несколько профилей
Секреты лучше хранить вне репозитория
application-{profile}.yml — стандартный и удобный способ разделения конфигураций.
Он широко используется в Spring Boot проектах.