Spring Framework은 간단한 설정만으로 Struts나 Webwork같은 Web Framework을 사용할 수 있지만, 자체적으로 MVC Web Framework을 가지고 있다.
Spring MVC는 기본요소인 Model, View, Controller 외에도, 아래와 같은 특성을 가지고 있다.
Spring MVC(Model-View-Controller)의 핵심 Component는 아래와 같다.
Component | 개요 |
---|---|
DispatcherServlet | Spring MVC Framework의 Front Controller, 웹요청과 응답의 Life Cycle을 주관한다. |
HandlerMapping | 웹요청시 해당 URL을 어떤 Controller가 처리할지 결정한다. |
Controller | 비지니스 로직을 수행하고 결과 데이터를 ModelAndView에 반영한다. |
ModelAndView | Controller가 수행 결과를 반영하는 Model 데이터 객체와 이동할 페이지 정보(또는 View객체)로 이루어져 있다. |
ViewResolver | 어떤 View를 선택할지 결정한다. |
View | 결과 데이터인 Model 객체를 display한다. |
이들 컴포넌트간의 관계와 흐름을 그림으로 나타내면 아래와 같다.
이 가이드문서는 Spring 2.5.6 버젼을 기준으로 작성되었다.