JVM/Spring
[Spring] 그냥되는 건 없다 1 - Spring-Boot AutoConfiguration
Hyo Kim
2023. 1. 9. 19:00
728x90
반응형
😏 서론
spring-boot 2.6.6 기준
스프링부트에서 빈 기본설정파일들을 intellij로 아무리 눌러도 불러오는 곳을 쉽게 찾지 못한 김에 정리하게 된 기본설정하는 곳.
🧐 본론
133개의 설정파일들이 정의되어 있다.
그런데 AopAutoConfiguration, BatchAutoConfiguration과 같이 기본적으로 의존성이 추가되어 있지 않는 녀석들이 있다.
@ConditionalOnProperty
- property가 참일 경우 컨테이너 등록
@ConditionalOnClass
- 해당 클래스가 경로에 존재할 경우 컨테이너 등록
@ConditionalOnMissingClass
- 해당 클래스가 존재하지 않을 경우 컨테이너 등록
이처럼 스프링부트와 호환된다고 명시된 녀석들의 의존성을 추가하면 자동으로 설정되도록 미리 구현해 놓았다.
그 외에도 더 다양한 어노테이션이 존재하고, 궁금하다면 아래 참조 링크를 확인하길 바란다.
기본 의존성으로 filter를 거친 후 살아남은 Configuration은 24개정도
😅 결론
스프링은 사용하는 사람들이 참 쉽게 쓸 수 있도록 잘 만들어뒀다.
하지만, 그만큼 내부는 복잡하다.. 한 번 보려고 하면 쉽게 타고타고 보기 어렵다.
앞으로 하나씩 살펴보자.
언제나 피드백은 환영입니다~!
참조
728x90
반응형