개발자 공부 - 인프런 온라인 강의/스프링 핵심 원리 - 기본편

[섹션 4. 스프링 컨테이너와 스프링 빈] 다양한 설정 형식 지원 - 자바 코드, XML / 인프런 김영한 스프링 핵심 원리 기본편

easpop 2023. 4. 2. 21:26
728x90
반응형

이번 시간에는 XML을 사용하여 스프링 컨테이너 설정하는 법을 알아보았다.

 

스프링 컨테이너는 다양한 형식의 설정 정보를 받아들일 수 있도록 유연하게 설계가 되어있다.

최근에는 자바코드의 AnnotationConfigApplicationContext를 사용하지만,

과거에는 GenericXmlApplicationContext를 썼는데, 이거는 자바코드가 아니라 appConfig.xml와 같은

xml문서의 설정정보를 사용하는 것이다.

 

최근에는 스프링 부트를 사용하기 때문에 XML 기반의 설정을 잘 사용하지는 않지만, 많은 레거시 프로젝트들이 XML로 되어 있고, XML을 사용하면 컴파일없이 빈 설정 정보를 변경할 수 있는 장점이 있다.

쉽게 말해, XML 문서를 바꿔치기하면, 빈 설정 정보를 바꿔치기 할 수 있다.

 

직접 테스트 코드를 작성하기 위해 패키지를 생성해준다.

 

그리고 테스트 클래스를 생성해준다.

반응형

GenericXmlApplicationContext로 new 생성해주고, 타입은 부모 타입인 ApplicationContext로 설정해주고 호출한다.

그리고 resourceLocations는 appConfig.xml로 미리 세팅을 해준다.

 

xml 문서의 설정 정보를 만들기 위해 resources에 xml 파일을 만들어준다.

 

위와 같이 빈 객체들을 생성해준다.

 

이전에 등록했던 자바 AppConfig 파일과 비교해보면 같은 형태로 되어있는 것을 확인할 수 있다.

 

이렇게 마무리 작성해주면 GenericXmlApplicationContext가 class path에 있는 appConfig.xml 정보를 읽어서 작동을 한다.

 

테스트 결과, xml 설정 정보를 가지고 와서, 빈 객체를 생성하는 것을 확인할 수 있다~~

728x90
반응형