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

개키우는개발자 : )

자동 구성 정보 파일 분리 본문

토비의 스프링 부트 - 이해와 원리/섹션7 - 자동 구성 기반 애플리케이션

자동 구성 정보 파일 분리

DOGvelopers 2024. 10. 9. 13:25
반응형

요약 및 핵심 개념

외부 설정 파일을 활용한 자동 구성 정보 관리에 대해 다루었습니다. ImportSelector를 이용해 외부 파일에서 Configuration 클래스 정보를 동적으로 로드하는 방법을 중심으로 설명했습니다.

핵심 내용

  1. 외부 설정 파일을 통한 구성 정보 관리:

    • 기존에는 코드 내에 Configuration 클래스 정보를 직접 지정했지만, 외부 파일을 활용해 설정 정보를 관리하는 방법으로 변경함.
    • 설정 파일을 통해 자동 구성의 후보 클래스를 지정하고, 이를 동적으로 선택하여 사용.
  2. 구성 파일의 작성:

    • 설정 파일은 클래스패스 내 META-INF/spring 디렉토리애노테이션의 FQN(Full Qualified Name) 뒤에 .imports 확장자를 붙여서 생성.
    • 파일 내에 자동 구성에 사용할 Configuration 클래스 이름을 나열하여 등록.
  3. ImportSelector와 설정 파일 연동:

    • ImportSelector에서 설정 파일을 읽어와서 문자열 배열로 반환해 Configuration 클래스를 로드.
    • 이 과정에서 Spring Boot의 ImportCandidates 유틸리티를 사용해 설정 파일에서 구성 정보를 로드.
  4. 코드 구현 방법:

    • ImportSelector 구현에서, ImportCandidates.load() 메소드를 사용설정 파일을 읽어오고, 이를 문자열 배열로 변환.
    • Stream API와 컬렉션 변환 기법을 활용해 파일에서 읽은 데이터동적으로 처리.
  5. 설정 파일 활용 테스트:

    • 설정 파일의 내용을 변경하여 자동 구성 정보의 반영 여부를 테스트함.
    • 구성 클래스 목록을 지우고 실행해 에러를 유발하거나, 정상적으로 로드되는지 확인.

결론

외부 설정 파일을 통해 스프링 부트의 자동 구성 정보를 유연하게 관리하는 방법을 배웠습니다. 다음 강의에서는 MyAutoConfiguration 애노테이션을 기존 Configuration 클래스에 적용하고, 자동 구성의 구조를 확장하는 작업을 진행할 예정입니다.

반응형
Comments