본문 바로가기
IT/spring

스프링 DispatcherServlet

by 뉴코딩맨 2023. 6. 28.
스프링 프레임워크에서 DispatcherServlet은 중앙 집중식 컨트롤러로서 웹 요청을 처리하고, 적절한 핸들러에게 요청을 전달하는 역할을 담당합니다. 스프링 DispatcherServlet에 대해 자세히 알아보고, 예시를 통해 설명하도록 하겠습니다.
 
 

DispatcherServlet이란?

DispatcherServlet은 스프링 MVC 아키텍처에서 핵심적인 역할을 수행하는 컨트롤러입니다. 웹 애플리케이션으로 들어오는 모든 요청을 처리하고, 적절한 핸들러에게 요청을 전달하여 처리 결과를 반환합니다. DispatcherServlet은 웹 계층과 비즈니스 계층 간의 통신을 담당하여 개발자가 비즈니스 로직에 집중할 수 있도록 합니다.
 
 

DispatcherServlet의 동작 원리

클라이언트로부터 요청이 들어오면 DispatcherServlet은 해당 요청을 가장 먼저 받습니다.
DispatcherServlet은 HandlerMapping을 사용하여 요청을 처리할 적절한 핸들러를 찾습니다.
핸들러가 실행되어 비즈니스 로직을 수행하고, ModelAndView 객체에 처리 결과를 담습니다.
ModelAndView 객체는 ViewResolver를 통해 뷰로 변환됩니다.
변환된 뷰는 클라이언트에게 응답으로 전송됩니다.
 
 

DispatcherServlet의 설정

DispatcherServlet은 스프링 설정 파일에 다음과 같이 등록할 수 있습니다:
 
<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/dispatcher-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
 
위의 예시에서는 DispatcherServlet 클래스를 사용하여 DispatcherServlet을 등록하고, contextConfigLocation을 통해 스프링 설정 파일의 위치를 지정합니다. 또한, / URL 패턴에 해당하는 요청을 DispatcherServlet이 처리하도록 설정합니다.
 
 

마무리

스프링 DispatcherServlet에 대해 알아보았습니다. DispatcherServlet은 스프링 MVC 아키텍처에서 핵심적인 역할을 수행하며, 웹 요청을 처리하고 핸들러에게 전달하는 역할을 담당합니다. 설정을 통해 DispatcherServlet을 등록하고 동작시킬 수 있습니다.

 

'IT > spring' 카테고리의 다른 글

스프링 @Controller 어노테이션  (0) 2023.06.29
스프링 DispatcherServlet 인코딩 설정  (0) 2023.06.28
Spring ViewResolver 클래스  (0) 2023.06.27
스프링 HandlerMapping 클래스  (0) 2023.06.27
스프링 Model 2 아키텍처  (0) 2023.06.26

댓글