-
Spring MVCSpring/Spring MVC 2020. 6. 21. 08:59반응형
[MVC model on Spring Framework]
- Model
- application의 상태(data)를 담는 객체입니다.
- 일반적으로 POJO입니다.
- Java Beans
- View
- Model의 data를 randering하여 사용자에게 보여주는 역할을 합니다.
- Controller
- View와 Model의 Connection을 담당합니다.
- Client의 request를 받아 response에 필요한 data를 Model에 담고 그 것을 View에 전달하는 역할을 합니다. 즉, Model object와 View name을 반환합니다.
- Controller —> Service —> Dao —> DB
- Servlet
[Request 처리 work flow]
- DispatcherServlet
- client의 request를 받아서 처리합니다.
- Dispatcher가 받은 request는 HandlerMapping으로 넘어갑니다.
- HandlerMapping
- 전달받은 request를 처리할 Controller를 Controller 정보가 저장된 table에서 찾아 mapping 해줍니다. (Controller URL Mapping)
- ViewResolver
- Controller가 반환한 View Name(the logical names)에 prefix와 suffix를 combine 하여 View Object(the physical view files)를 반환합니다. 예를어 view name은 “main”, prefix는 “/WEB-INF/Views/“, suffix는 “.mustache”인 경우 Controller로 부터 받은 Model을 “/WEB-INF/Views/main.mustache”에 해당하는 View에 전달합니다.