예시
Spring WEB MVC
1. 핸들러 조회: 클라이언트로부터 HTTP 요청이 들어오면, 디스패처 서블릿은 요청을 처리할 수 있는 핸들러를 조회
2. 핸들러 어댑터 조회: 핸들러를 처리할 수 있는 핸들러 어댑터를 조회
3. 핸들러 호출: 핸들러 어댑터가 핸들러를 호출하여 요청을 처리
4. 핸들러 처리: 핸들러 (컨트롤러)가 요청을 처리하고 결과를 반환
5. ModelAndView 반환: 핸들러는 처리 결과를 ModelAndView 객체에 담아 디스패처 서블릿으로 반환
6. viewResolver 호출: 디스패처 서블릿은 viewResolver를 호출하여 View를 찾음
7. View 반환: viewResolver는 해당 요청에 맞는 View를 반환
8. render(model) 호출: 디스패처 서블릿은 반환된 View의 render 메서드를 호출하여 Model 데이터를 렌더링
9. HTML 응답: 최종적으로 렌더링된 HTML 응답을 클라이언트에게 반환
VM : V = 1 : N
관계를 갖음커맨드 : 여러 요소에 대한 처리를 하나의 액션으로 처리할 수 있는 기법
데이터 바인딩 : 화면에 보이는 데이터와 브라우저 상의 메모리 데이터를 일치시키는 방법
MVVM 패턴을 가진 대표적인 프레임워크는 뷰(Vue.js)가 있음
패턴 | 구성 요소 | 설명 |
---|---|---|
MVC | Model-View-Controller | Model은 데이터와 비즈니스 로직을 관리, View는 UI를 관리, Controller는 사용자 입력을 처리하고 Model과 View를 업데이트 |
MVP | Model-View-Presenter | Model은 데이터와 비즈니스 로직을 관리, View는 UI를 관리, Presenter는 View와 Model 간의 상호작용을 처리하고 로직을 담당 |
MVVM | Model-View-ViewModel | Model은 데이터와 비즈니스 로직을 관리, View는 UI를 관리, ViewModel은 View의 상태와 로직을 관리하며 데이터 바인딩을 사용하여 View를 업데이트 |