스프링 MVC 요청흐름

이경현·2024년 10월 31일

스프링 동작 원리

클라이언트의 요청이 들어오면 DispatcherServlet으로 보내고
DispatcherServlet 이 가지고 있는 handler 가 있는지 확인하고 해당하는 handler로 보낸다>>

handler는 컨트롤러에 처리 요청 >>
컨트롤러가 클라이언트 요청을 처리하고 결과값을 보여줄 view의 이름을 DispatcherServlet로 리턴

DispatcherServlet가 받은 view의 이름을 viewResolver에 보내고 해당 view를 검색한다
viewResolver가 검색한 결과를 view에 보낸다

view는 처리결과를 DispatcherServlet에 보내고 DispatcherServlet는 결과를
웹브라우저(클라이언트)에게 전달한다

model 2와 차이점

실행순서

Spring MVC의 구성요소

  • DispatcherServlet(Front Controller) :
    모든 클라이언트의 요청을 전달받는다. Contrller에게 클라이언트의 요청을 전달하고, Controller가 리턴 한 결과값을 View에게 전달하여 알맞은 응답을 생성한다.
  • HandlerMaping :
    클라이언트의 요청 URL을 어떤 Controller가 처리할지를 결정한다. URL과 요청 정보를 기준으로 어떤 핸들러 객체를 사용할지 결정하는 객체이며,DispatcherServlet은 하나 이상의 핸들러 매핑을 가질 수 있다.
  • Controller :
    클라이언트의 요청을 처리한 뒤, Model을 호출하고 그 결과를 DispatcherServlet에 알려준다.
  • ModelAndView :
    Controller가 처리한 데이터 및 화면에 대한 정보를 보유한 객체를 말한다.
  • ViewResolver :
    Controller가 리턴 한 View 이름을 기반으로 Controller의 처리 결과를 보여줄 View를 결정한다.
  • View :
    Controller의 처리결과를 보여줄 응답화면을 생성한다.

0개의 댓글