ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SPRING_01_ web.xml 설정
    4.Spring/4.1 이론정리 2022. 6. 14. 11:31

    스프링을 배우는 중에 xml 설정에서 완전 멘붕이 와서 정리해본다.

     

    web.xml : 웹 어플리케이션 관련한 기본적인 설정을 작성하는 파일

     

    1. root-context.xml :부모컨텍스트. 전체적으로 공통된 설정을 할때 사용

    <display-name>board</display-name>
    	<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>

    context-param 에서 설정한 contextConfigLocation이 

    org.springframework.web.context.ContextLoaderLister의 파라미터로 작동함.

    org.springframework.web.context.ContextLoaderLister가 로딩하는 자바빈들이 root-context.xml에 있음

    root-context 아래로 dispatcherServlet에 자바빈들이 위치

    ContextLoaderLister가 root-context.xml을 로딩하고 여기 있는 자바빈들이 root-context.xml(부모context)에 위치하게 됨

    하위에 dispatcherServlet 들이 자식으로 위치하게 된다. dispatcherServlet 여러개 생성 가능함.

     

    역할 : 공통된 설정을 할때, dispatcherServlet이 여러개 있을시 공통된 설정을 할때 root-context에서 설정

     

    2. servlet : 서블릿 설정을 할때 사용

    <servlet>
    		<servlet-name>appServlet</servlet-name>
    		<servlet-class>org.springframework.web.servlet.DispatcherServlet
    		</servlet-class>
    		<init-param>
    			<param-name>contextConfigLocation</param-name>
    			<param-value>/WEB-INF/spring/appServlet/servlet-context.xml
    			</param-value>
    		</init-param>
    		<load-on-startup>1</load-on-startup>
    	</servlet>

    root-context.xml요청은 appServlet이 받고 appServlet은 DispatcherServlet이다.

    이 DispatcherServlet은 파라미터로 servlet-context.xml을 가지고 로딩된다.

    DispatcherServlet : 스프링에서 없어서는 안되는 필수적인 존재. 모든 요청의 앞단에서 우리가 만드는 컨트롤러에 요청을 보내주는 역할 . FrontController이라고 함.

     

Designed by Tistory.