스프링 프레임워크 (14) Spring MVC

넙데데맨·2022년 5월 16일
0

모델 1, 2

모델 1 - Controller & Dispatcher가 하나로 이루어짐
모델 2 - Dispatcher가 요청을 받아 입력 값을 Controller로 보내주며 호출할 View페이지 정보를 받아 View 호출

Spring MVC

스프링 프레임워크 자체에서 MVC 기능 제공

특징

  • 모델 2 아키텍처 지원
  • 다른 모듈과 연계 쉬움
  • tiles, sitemesh 같은 View 기술과 연계 쉬움

구성 요소

DispatcherServlet 클라이언트 요청을 전달받아 해당 요청에 대한 컨트롤러 선택해 요청 전달 / 컨트롤러가 반환한 값 View에 전달해 알맞은 응답을 생성
HandlerMapping 클라이언트가 요청한 URL을 처리할 컨트롤러를 지정
Controller 클라이언트의 요청을 처리한 후 그 결과를 DispatcherServlet에 전달
ModelAndView 컨트롤러가 처리한 결과 및 뷰 선택에 필요한 정보 저장
ViewResolver 컨트롤러의 처리 결과 전달할 뷰 지정
View 컨트롤러의 처리 결과 화면 생성

기능 수행 과정

  1. 브라우저가 DispatcherServlet에 URL로 접근해 정보 요청
  2. HandlerMapping에서 해당 요청에 대해 매핑된 컨트롤러 있는 지 요청
  3. 매핑된 Controller에 대해 처리 요청
  4. Controller가 클라이언트의 요청을 처리한 결과, View 이름을 ModelAnd View에 저장해서 DispatcherServlet으로 반환
  5. 전달 받은 View 이름을 ViewResolver로 보내 해당 View 요청
  6. ViewResolver는 요청한 View 보냄
  7. View 처리 결과 DispatcherServlet로 보냄
  8. DispatcherServlet은 최종 결과를 브라우저로 전송
profile
차근차근

0개의 댓글