티스토리 뷰
JAVA
코린이도이
2023. 11. 6. 19:08
MVC
- Model - View - Controller
- 소프트웨어 아키텍처 디자인 패턴의 한 종류
- 사용자 인터페이스와 비즈니스 로직을 분리하고 각각을 독립적으로 유지하여 유연하고 확장 가능한 코드 생산 가능
Model
- 데이터와 비즈니스 로직을 담당
- 데이터를 관리하고 변경이 발생하면 View에게 알림
- DB와 연동을 위한 DAO(Data Access Objecr)와 데이터 구조를 표현하는 DO(Data Objecr)로 구성
View
- 데이터를 사용자에게 보여주는 사용자 인터페이스(UI)를 담당
- 모델의 데이터를 표현
- 사용자의 입력을 받아 컨트롤러에 전달
Controller
- 모델(Model)과 뷰(View) 사이의 연결고리 역할을 수행
- 뷰에서 사용자의 입력을 받아 모델을 업데이트
- 모델의 변경 사항을 뷰에 반영
기본 동작 흐름
- 클라이언트의 요청을 Dispatcher Servlet에서 요청 수신
- 요청을 처리해줄 컨트롤러 Handler Mapping에게 검색 요청
- 컨트롤러 정보를 Handler Adapter에 보내 실행 요청
- Handler Adapter는 Controller를 통해 비즈니스 로직을 실행
- 실행 결과를 Model에 설정하고 View Name을 반환
- View Name으로 View를 찾는 작업을 View Resolver에게 요청
- 반환된 View에 대한 렌더링 프로세스를 View에 요청
« 2026/02 »
| 일 |
월 |
화 |
수 |
목 |
금 |
토 |
| 1 |
2 |
3 |
4 |
5 |
6 |
7 |
| 8 |
9 |
10 |
11 |
12 |
13 |
14 |
| 15 |
16 |
17 |
18 |
19 |
20 |
21 |
| 22 |
23 |
24 |
25 |
26 |
27 |
28 |