일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- java spring
- AOP
- spring framework
- myBatis
- 프로퍼티
- Di
- STS
- Dependency Injection
- SpringJDBC
- Linux
- unix
- 컨테이너
- POJO
- 마이바티스
- JDBC TEMPLATE
- @test
- spring aop
- @AspectJ
- Spring Boot
- spring
- XML
- @JUnit
- JdbcTemplate
- pointcut
- java
- Framework
- 리눅스
- @Spring-Test
- Ubunt
- Spring JDBC
Archives
- Today
- Total
개키우는개발자 : )
자동 구성 정보 파일 분리 본문
반응형
요약 및 핵심 개념
외부 설정 파일을 활용한 자동 구성 정보 관리에 대해 다루었습니다. ImportSelector
를 이용해 외부 파일에서 Configuration 클래스 정보를 동적으로 로드하는 방법을 중심으로 설명했습니다.
핵심 내용
외부 설정 파일을 통한 구성 정보 관리:
- 기존에는 코드 내에 Configuration 클래스 정보를 직접 지정했지만, 외부 파일을 활용해 설정 정보를 관리하는 방법으로 변경함.
- 설정 파일을 통해 자동 구성의 후보 클래스를 지정하고, 이를 동적으로 선택하여 사용.
구성 파일의 작성:
- 설정 파일은 클래스패스 내
META-INF/spring
디렉토리에 애노테이션의 FQN(Full Qualified Name) 뒤에.imports
확장자를 붙여서 생성. - 파일 내에 자동 구성에 사용할 Configuration 클래스 이름을 나열하여 등록.
- 설정 파일은 클래스패스 내
ImportSelector
와 설정 파일 연동:ImportSelector
에서 설정 파일을 읽어와서 문자열 배열로 반환해 Configuration 클래스를 로드.- 이 과정에서 Spring Boot의
ImportCandidates
유틸리티를 사용해 설정 파일에서 구성 정보를 로드.
코드 구현 방법:
ImportSelector
구현에서,ImportCandidates.load()
메소드를 사용해 설정 파일을 읽어오고, 이를 문자열 배열로 변환.- Stream API와 컬렉션 변환 기법을 활용해 파일에서 읽은 데이터를 동적으로 처리.
설정 파일 활용 테스트:
- 설정 파일의 내용을 변경하여 자동 구성 정보의 반영 여부를 테스트함.
- 구성 클래스 목록을 지우고 실행해 에러를 유발하거나, 정상적으로 로드되는지 확인.
결론
외부 설정 파일을 통해 스프링 부트의 자동 구성 정보를 유연하게 관리하는 방법을 배웠습니다. 다음 강의에서는 MyAutoConfiguration 애노테이션을 기존 Configuration 클래스에 적용하고, 자동 구성의 구조를 확장하는 작업을 진행할 예정입니다.
반응형
'토비의 스프링 부트 - 이해와 원리 > 섹션7 - 자동 구성 기반 애플리케이션' 카테고리의 다른 글
@Configuration과 @proxyBeanMethods (0) | 2024.10.09 |
---|---|
자동 구성 애노테이션 적용 (0) | 2024.10.09 |
동적인 자동 구성 정보 등록 (0) | 2024.10.09 |
인프라 빈 구성 정보의 분리 (0) | 2024.10.09 |
빈 오브젝트의 역할과 구분 (0) | 2024.10.09 |
Comments