티스토리 뷰

짧게 web.xml 역할을 적어볼까한다.

 

web.xml은 Servlet Mapping 선언, 인증에 필요한 URL 정보 확인하는 역할을 가지고 배포설명자이다.

프로젝트가 시작되면 자동으로 Web.xml의 설정들이 메모리에 올라가게 된다.

 

파일 위치는 WEB-INF/ 하위에 있다.

 

web.xml 에 작성되는 내용

1. Servlet Context 설정 

2. Servlet, jsp 설정 (매핑)

3. Error Handler

4. Session 관련된 내용

 

 

가장 기본적인 설정을 알아보도록 한다.


ApplicationContext 설정

- 모든 서블릿, 필터를  작성된 ApplicationContext.xml을 통해 공유할 수 있도록 설정한다.

    <!-- (Context) applicationContext.xml에서 설정한 Bean >> 모든 서블릿, 필터 공유 -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>

    <!-- 서블릿과 필터에 공유 할 수 있도록 리스너를 설정 -->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

 

Error Handler 설정

- jsp에서 에러가 발생되면 default 에러 페이지가 아닌 직접 만든 에러페이지를 띄우게 해준다.

<error-page>
    <error-code>404</error-code>
    <location>/error/404page.jsp</location>
</error-page>

 


MVC에서의 DispatcherServlet 설정

- 클라이언트 URL 요청을 처리하여 해당 Controller에게 위임하는 역할을 할 수 있도록 한다.

- 스프링 컨테이너 생성

 

    <servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- dispatcher에 대한 서블릿 설정 파일 경로 설정 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- 클라이언트에서 '/'으로 시작되는 경로로 요청되는 경우 dispatcher가 처리함. -->
    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

 

 

'Spring & Spring Boot' 카테고리의 다른 글

Spring / Group, Artifact ?  (0) 2022.10.28