면접

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 응답