[스프링] 환경에 따른 스프링 프로파일링 설정
스프링은 환경별로 다른 설정을 관리할 수 있는 프로파일링 기능을 제공합니다. 이를 통해 개발, 테스트, 운영 환경에 따라 다른 구성 요소를 유연하게 관리할 수 있습니다.
프로파일 정의
프로파일은 스프링 애플리케이션에서 사용할 환경 구성을 정의하는데, @Profile
애노테이션을 이용하여 선언할 수 있습니다. 예를 들어, dev
, test
, prod
등의 프로파일을 정의할 수 있습니다.
@Configuration
@Profile("dev")
public class DevelopmentConfig {
// 개발 환경 설정
}
@Configuration
@Profile("prod")
public class ProductionConfig {
// 운영 환경 설정
}
프로파일 지정
프로파일은 스프링의 환경 설정 파일에서 지정할 수 있습니다. spring.profiles.active
속성을 사용하여 활성화할 프로파일을 지정할 수 있습니다.
spring:
profiles:
active: dev
또는 프로그램 실행 시 JVM 옵션으로 프로파일을 지정할 수 있습니다.
java -jar -Dspring.profiles.active=prod myapp.jar
프로파일별 설정 관리
프로파일을 사용하여 환경에 따라 다른 설정을 관리할 수 있습니다. 각 프로파일에 맞는 설정 파일을 작성하고 활성화된 프로파일에 따라 해당 설정이 로드됩니다.
application-dev.yml
application-prod.yml
프로파일별로 다른 환경 설정을 관리하기 위해 위와 같이 설정 파일을 분리하여 관리할 수 있습니다.
프로파일링을 통해 각 환경에 맞는 설정을 유연하게 관리할 수 있으며, 이를 통해 애플리케이션의 환경에 따라 적합한 구성을 쉽게 적용할 수 있습니다.
참고 자료
- 스프링 공식 문서: 스프링 부트 특정 프로파일 활성화