JAVA/Spring & Spring Boot

추상화 된 빈 설정 메타 정보 BeanDefinition(빈 정의)

신우섭 2022. 2. 4. 01:34

추상화 된 빈 설정 메타 정보 BeanDefinition(빈 정의)

스프링 XML, JAVA 코드, Groovy 등의 다양한 설정 형식을 지원합니다.
이렇게 다양한 설정을 지원할 수 있는 이유는 "BeanDefinition" 이라는 추상화가 있기에 가능합니다.

  • XML을 읽어서 -> BeanDefinition
  • 자바 코드를 읽어서 -> BeanDefinition
  • Groovy 코드를 읽어서 -> BeanDefinition

스프링 컨테이너는 JAVA 코드인지, XML인지 몰라도 됩니다, 오직 BeanDefintion 만 알면 됩니다.

스프링 컨테이너는 이 BeanDefintion 즉 빈 설정 메타정보를 기반으로 스프링 빈을 생성합니다.