스프링은 Web 요청을 어떻게 처리할까?
Spring MVC Architecture
MVC 패턴 동작 과정
- Controller로 데이터를 요청하거나 처리할 데이터를 전송
- Controller는 요청 처리를 위해 Model을 호출
- Model은 데이터를 처리한 후 Controller로 반환
- Controller는 반환받은 데이터를 View로 반환
Web 요청 처리 과정
- Request 발생
- DispatcherServlet은 HandlerMapping 중에 현재 Request URL에 대응하는 Handler를 검색
- 해당 Handler와 Handler와 연관된 Inteceptor List를 가지고 있는 HandlerExecutionChain을 반환받는다.
- DispatcherServlet은 HandlerAdaper 중 현재 Handler와 연관된 HandlerAdaptor를 반환받는다.
- HandlerExecutionChain에 존재하는 Interceptor 전처리를 수행
- HandlerAdapter는 Request에 부합하는 Controller 메소드 실행을 요청
- 해당 Controller는 Request를 처리하고 ModelAndView 객체를 DispatcherServlet에 반환
- HandlerExecutionChain에 존재하는 Interceptor 후처리를 수행
- DispatcherServlet은 ViewResolver를 통해 적합한 View를 검색
- DispatcherServlet은 해당 View를 생성하여 응답
학습 로그
# [Spring] MVC 패턴과 Spring Request 처리 과정
## 내용
- 프로젝트에 적용한 MVC 패턴과 Spring 요청 처리 과정을 학습
## 링크
- https://velog.io/@jh8579/Spring-Web-Request-%EC%B2%98%EB%A6%AC-%EA%B3%BC%EC%A0%95
참조
https://webdevtechblog.com/spring-mvc-architecture-236235d48fa1