기존 설정
# application.yml
# default
spring:
profiles:
active: test
---
spring:
profiles: test
include:
- common
# 기타 설정 ..
---
spring:
profiles: prod
# 기타 설정 ..
---
spring:
profiles: dev
# 기타 설정 ..
spring.profiles 설정을 통해 어떠한 profile인지 표시
spring.profiles.include 설정을 통해 추가적으로 포함할 profile 표시
2.4 버전 이후 설정
spring.profiles 설정은 duplicated 되었다
# application.yml
# default
spring:
profiles:
active: test
group:
dev:
- dev-t1
- common
---
spring:
config:
activate:
on-profile: test
# 기타 설정 ..
---
spring:
config:
activate:
on-profile: prod
# 기타 설정 ..
---
spring:
config:
activate:
on-profile: dev
# 기타 설정 ..
spring.config.activate.on-profile 설정을 통해 어떠한 profile인 경우 해당 설정들이 활성화되는지 표시
spring.profiles.group 설정을 통해 profile들을 그룹핑
활성 profile 설정
실제로 application을 실행할 때 spring.profiles.active 설정을 주어 어떠한 profile를 활성화할 것인지 정해주어야 한다.
해당 설정이 없을 시에는 default값으로 "default" profile이 실행된다.
위의 예시들처럼 yaml, properties file에 설정을 해주거나
실행 시 argument로 넘겨도 된다.
java -jar myApp.jar --spring.profiles.active=dev
또는, 사용하는 개발 tool의 실행 argument에 설정해주면 된다.
( 이클립스의 경우 실행 프로젝트의 오른쪽 클릭 -> Run as.. -> Run Configurations )
추가적으로, 참고할만한 링크
spring-projects github에 2.4 관련 release note와 config data migration guide
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.4-Release-Notes
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-Config-Data-Migration-Guide
'Spring > etc' 카테고리의 다른 글
[Spring] RestTemplate이란 (0) | 2022.02.22 |
---|---|
[Spring] ResponseBodyAdvice 사용 ( + @ControllerAdvice ) (0) | 2022.02.14 |
[Spring] 설정 파일 분리 및 여러 개 설정하기 (application.yml) (0) | 2022.01.26 |
[Spring] Controller DTO 데이터 검증 - @Valid (0) | 2022.01.11 |
[Spring] Spring Boot Logging(SLF4J, Logback) (0) | 2021.12.13 |