xml 2

스프링 빈 설정 메타 정보 - BeanDefinition

앞서 스프링이 다양한 설정 형석을 지원하는 것을 확인해보았다. 어떻게 지원하는 것일까? 그 중심에는 BeanDefinition이 있다. 이것은 역할과 구현을 개념적으로 나눈 것이다 XML을 읽어서 BeanDefinition을 만든다. Java 코드를 읽어서 BeanDefinition을 만든다. 즉, 스프링 컨테이너는 어떤 코드인지를 아는 것이 아니라, BeanDefinition을 알고 있는 것이다. "BeanDefinition"을 빈 설정 메타정보라 한다. Java의 '@Bean' / XML의 각각 하나씩 메타 정보가 생성된다. 스프링 컨테이너는 이 메타정보를 기반으로 Bean을 생성한다. 즉, 스프링 컨테이너는 BeanDefinition에만 의존한다. AnnotationConfigApplicationC..

Spring/Spring Core 2021.03.10

다양한 설정 형식 지원

스프링 컨테이너는 다양한 형식의 설정 정보를 받아드릴 수 있게 유연하게 설계되어 있다. java XML Groovy 등등 임의로 구현하여 새로운 설정 정보 형식을 사용할 수 있음 XML 설정 사용해보기 최근에는 Spring Boot를 많이 사용하면서 XML기반의 설정은 잘 사용하지 않는다. 하지만 아직 많은 레거시 프로젝트들이 XML로 되어있고, XML을 사용하면 컴파일 없이 빈 설정 정보를 변경할 수 있는 장점도 있으므로 알아두어서 나쁠 것은 없다. GenericXmlApplicationContext를 사용하여 xml 설정 파일을 넘기면 된다. 테스트 코드 XML 설정 파일 일반적으로 java코드를 제외한 나머지 파일들은 resources 폴더 내부에 놓는다. Spring Config로 작성할 XML문..

Spring/Spring Core 2021.03.10
반응형