반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

개키우는개발자 : )

Environment 추상화와 프로퍼티 본문

토비의 스프링 부트 - 이해와 원리/섹션9 - 외부 설정을 이용한 자동 구성

Environment 추상화와 프로퍼티

DOGvelopers 2024. 10. 13. 14:48
반응형

요약 및 핵심 개념

스프링 부트의 외부 설정과 이를 활용한 자동 구성에 대해 다루었습니다. 외부 설정은 자동 구성된 빈의 기본값을 커스터마이즈하는 데 사용되며, 이를 통해 애플리케이션의 유연성과 재사용성을 높일 수 있습니다.

핵심 내용

  1. 자동 구성과 외부 설정:

    • 스프링 부트는 자동으로 150개 이상의 구성 클래스를 제공하며, 기본적으로 제공되는 값들을 쉽게 수정할 수 있도록 외부 설정을 활용합니다.
    • 예를 들어, Tomcat의 기본 포트는 8080이지만, 외부 설정을 통해 포트를 9090으로 변경할 수 있습니다.
  2. 외부 설정과 프로퍼티 변경:

    • Spring의 Environment 추상화프로퍼티를 읽어오는 메커니즘을 제공합니다. 이를 통해 외부 설정 파일에서 지정된 값들을 읽어 자동 구성된 빈의 기본값을 변경할 수 있습니다.
    • 대표적인 예는 JDBC 연결 정보로, DB URL, 사용자명, 비밀번호 등을 외부 설정 파일에서 설정할 수 있습니다.
  3. 프로퍼티 파일과 프로파일 활용:

    • 프로파일을 사용하면 환경별(개발, 운영, 테스트 등)로 빈 구성을 달리할 수 있습니다. 이를 통해 환경에 맞는 설정을 손쉽게 관리할 수 있습니다.
    • 스프링 부트는 application.properties 또는 application.yml 같은 외부 설정 파일을 사용하며, 다양한 환경 변수와 시스템 프로퍼티를 통해 설정값을 읽어옵니다.
  4. 우선순위와 다양한 설정 소스:

    • 스프링 부트의 설정값 우선순위환경 변수, 시스템 프로퍼티, 커스텀 프로퍼티 소스 등의 순서로 결정됩니다. 프로퍼티 이름 변형도 자동으로 처리되어 대소문자, 언더스코어 등의 차이를 고려해 값을 찾습니다.
  5. Environment 추상화의 다양한 프로퍼티 소스:

    • 시스템 프로퍼티, OS 환경 변수, 서블릿 설정, JNDI 등의 다양한 소스를 통해 프로퍼티 값을 읽어오며, Spring의 Environment 객체는 이를 단일 인터페이스로 통합하여 관리합니다.

결론

스프링 부트의 외부 설정을 통해 자동 구성된 빈의 값을 어떻게 수정하고 관리할 수 있는지를 다루었습니다. 다음 강의에서는 Spring과 Spring Boot의 Environment 추상화를 활용해 프로퍼티 정보를 읽어오는 예제를 통해 이 개념을 더 명확히 설명할 예정입니다.

반응형
Comments