Spring MVC 기본 동작 흐름
- Spring MVC는 Model 2 아키텍처로 되어있다.
- DB를 제외한 파란색 부분 : Spring이 제공
- 보라색 부분 : 개발자가 구현
- 초록색 부분 : Spring이 제공하는 부분, 개발자가 구현하는 부분 같이 존재
순서 잘 숙지하기
Spring MVC를 이해하는 것 = DispatcherServlet의 동작을 이해하는 것
- Client가 보낸 모든 요청을 DispatcherServlet이라는 Servlet 클래스가 받는다.
- DispatcherServlet는 요청을 처리해줄 Controller와 메서드가 무엇인지 Handler Mapping에게 물어보고 알아낸다.
- Handler Adapter에게 실행을 요청한다.
- 2번에서 결정되었던 Controller와 메서드가 실행이 된다.
- 결과를 Model에게 받아서 Dispatcher Servlet에게 전달
- Controller가 return view name을 가지고 View Resolver를 통해 View를 출력