본문 바로가기

🌱JAVA/🌟 Spring MVC 패턴

Model, View, Controller

유기적 역할 분담

Model : 모델을 최종 페이지에 쓰일 데이터를 뷰에게 전달한다.
View : 뷰는 최종 페이지를 생성 한다.
Controller : 클라이언트로 부터 요청을 받는다.

MVC란?

Model, View, Controller 개념을 사용하는 애플리케이션 설계 모델이다.

 

MVC 구성요소에 대해 알아보면 아래와 같다.

 

1. Model

Model은 컨트롤러에서 수행 할 내용을 받고 자바 코드 및 SQL 연산을 수행 후 결과물을 Controller로 반환하는 역할을 한다.

 

2. View

View는 User Interface를 뜻하는 의미로, UI란 사용자가 보게 되는 화면을 의미한다.

대표적으로는 jsp를 들 수 있으며, jsp 화면에서 버튼을 클릭하는 이벤트를 수행하면 해당 이벤트 정보가 Controller로 넘어가고 Controller는 메소드에서 수행하고 난 뒤 결과물을 View로 가져와 화면 표현에 사용한다.

 

3. Controller

Controller는 View에서 버튼 클릭 등의 이벤트를 수행했을 경우 Model에서 수행해야할 메소드와 파라미터를 전송 하고, Model에서 수행 후 그 내용을 View로 반환하게 된다.

 

Model View Controller 순으로 알아봤지만 실제 사용시 에는 순서가 조금 변경 된다.

 

1. View 에서 이벤트 수행

2. Controller 에서 수행할 메소드를 Model에 전송

3. Model에서 메소드를 수행하고 결과물을 Controller에 반환

4. Controller에서 반환받은 내용을 View로 반환

5. View 에서 이벤트 결과 확인

 

요약 : MVC 패턴을 간단하게 요약 하면, View에서 특정 이벤트를 수행했을 때 Controller에서 해당 이벤트에 해당하는 메소드를 Model로 보내면 Model에서 수행해서 결과를 가져온 뒤 View로 전달하고 사용자 즉 클라이언트는 해당 정보를 확인하게 된다.