3.2.2 루트 컨텍스트 설정
루트 컨텍스트(root-context)는 모든 서블릿과 필터가 공유할 수 있는 루트 스프링 컨테이너 설정으로, 공통 빈(Service, Repository(DAO), DB, Log 등)을 설정합니다. 주로 View 지원을 제외한 bean을 설정합니다.
기본 설정 파일 외에 사용자가 직접 제어하는 XML 파일을 지정하려면 <context-param> 요소를 사용하여 다음과 같이 설정합니다.
<!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
➊
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/root-context.xml</param-value>
</context-param>
<!-- Creates the Spring Container shared by all Servlets and Filters -->
➋
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
➊ 스프링 MVC 설정 파일 등록하기: STS에서 기본적으로 제공하는 기본 설정 파일 외에 사용자가 직접 제어하는 XML 파일 목록을 지정하는 역할을 합니다. <context-param> 요소에 설정된 root-context.xml 파일은 모든 서블릿과 필터에서 사용되는 루트 스프링 컨테이너(애플리케이션 컨텍스트, Ioc 컨테이너) 설정입니다.
➋ 스프링 MVC 파일 정보 읽기: 루트 컨텍스트에 설정된 정보들을 모든 서블릿과 필터에 공유합니다.