[스프링] 프로파일 간 의존 관리

스프링 프레임워크는 프로파일(Profile) 기능을 제공하여 환경에 따라 다른 의존성을 관리할 수 있습니다.

프로파일 설정하기

프로파일은 @Profile 애노테이션을 클래스나 메서드에 적용하여 정의할 수 있습니다:

@Configuration
public class AppConfig {

    @Bean
    @Profile("dev")
    public DataSource devDataSource() {
        return new DevDataSource();
    }

    @Bean
    @Profile("prod")
    public DataSource prodDataSource() {
        return new ProdDataSource();
    }
}

프로파일 활성화하기

프로파일은 활성화하려는 값에 따라 spring.profiles.active 속성을 설정하여 활성화할 수 있습니다:

spring.profiles.active=dev

또는 활성화할 프로파일을 메인 클래스에 프로그래밍 방식으로 설정할 수 있습니다:

public static void main(String[] args) {
    SpringApplication application = new SpringApplication(AppConfig.class);
    application.setAdditionalProfiles("dev");
    application.run(args);
}

이러한 방법으로 프로파일을 설정하면 환경에 따라 적절한 의존성을 자동으로 관리할 수 있습니다.

결론

프로파일을 사용하면 환경에 따라 다른 의존성을 간단하게 관리할 수 있으며, 이를 통해 애플리케이션의 유연성과 재사용성을 향상시킬 수 있습니다.

참고문헌: