면접
MVC(모델 - 뷰 - 컨트롤러)
자바보이
2020. 12. 6. 16:01
실무 면접 때 나한테 온 질문은 아니고 같이 본 면접자에게 들어온 질문이었다.
MVC는 무엇인가요?
- 컨트롤러
- 사용자 입력을 받고, 애플리케이션이 응답으로 해야 할 작업을 정의하고, 적절한 모델로 작업을 위임하고, 결과를 뷰로 보낸다.
- 모델
- 다른 모든 것을 처리한다. 애플리케이션의 중심으로 입력 값 검증, 비즈니스 로직, 데이터베이스와의 상호작용을 포함한다.
- 뷰
- 사용자 인터페이스에 정보를 표시한다.
MVC 구조
0. 클라이언트의 HTTP 요청
1. 핸들러(컨트롤러) 조회
2. 핸들러를 처리할 수 있는 핸들러 어댑터를 조회
3. 핸들러 어댑터를 통해서 컨트롤러 동작 수행
4. ModelAndView 반환
5. viewResolver 호출
6. View 반환
7. Model을 담아 render 호출
8. View HTML 응답