본문 바로가기

Web/Spring

[ Spring ] ④ 스프링 MVC 기능

# 스프링 프레임워크 MVC 특징

(1) 스프링에서 지원하는 MVC 기능의 특징

  • 모델2 아키텍처를 지원
  • 스프링과 다른 모듈과의 연계가 용이
  • 타일즈(tiles)나 사이트메시(sitemesh)같은 View 기술과의 연계가 용이
  • 태그 라이브러리를 톻해 message 출력, theme 적용 그리고 입력 폼을 보다 쉽게 구현 가능

 

(2) 스프링 프레임워크의 구조

 

(3) 스프링 프레임워크 MVC 구성 요소

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

 

(4) 스프링 프레임워크 MVC 기능 수행 과정

  1.  브라우저가 DispatcherServletURL로 접근하여 해당 정보를 요청
  2. 핸들러 매핑에서 해당 요청에 대해 매핑된 컨트롤러가 있는지 요청
  3. 매핑된 컨트롤러에 대해 처리를 요청
  4. 컨트롤러가 클라이언트의 요청을 처리한 결과와 View 이름을 ModelAndView에 저장해서 DispatcherServlet으로 반환
  5. DispatcherServlet에서는 컨트롤러에서 보내온 View 이름을 ViewResolver로 보내 해당 View를 요청
  6. ViewResolver는 요청한 View를 보냄
  7. View의 처리 결과를 DispatcherServlet으로 보냄
  8. DispatcherServlet은 최종 결과를 브라우저로 전송

 

References

  1. 자바 웹을 다루는 기술

'Web > Spring' 카테고리의 다른 글

[ Spring ] ⑥ 스프링 애너테이션 기능  (0) 2019.08.12
[ Spring ] ⑤ 스프링 JDBC 기능  (0) 2019.08.02
[ Spring ] ③ AOP  (0) 2019.08.01
[ Spring ] ② DI와 IoC  (0) 2019.08.01
[ Spring ] ① Spring Framework 시작하기  (0) 2019.08.01