BeanDefinition 스프링 빈 설정 메타 정보
BeanDefinition 인터페이스
- 스프링이 다양한 설정 형식을 지원할 수 있는 이유
- 역할과 구현을 개념적으로 나눈 것
- XML 을 읽어서 BeanDefinition 생성
- 자바 코드를 읽어서 BeanDefinition 생성
- 스프링 컨테이너는 자바 코드인지 XML 인지 몰라도 된다.
- 스프링 컨테이너는 BeanDefinition 만 알면 된다.
- BeanDefinition: 빈 설정 메타 정보
@Bean
, <Bean>
각각 하나씩 메타 정보가 생성된다.
- 스프링 컨테이너는 이 메타 정보를 기반으로 스프링 빈 생성
💡 BeanDefinition 을 직접 정의하거나 사용할 일은 거의 없다.