웹 개발 기초/자바 웹을 다루는 기술

MVC 디자인 패턴

sungw00 2023. 3. 9. 11:00
728x90

MVC

  • 모델2 방식으로 구현한다는 말과 같은 개념
  • Model-View-Controller(모델-뷰-컨트롤러)로 구성
  • 일반 PC 프로그램 개발에 사용되는 디자인 패턴을 웹 애플리케이션에 도입한 것
  • 웹 애플리케이션을 화면 부터 요청 처리 부분, 로직 처리 부분으로 나누어 개발하는 방법

 

MVC의 특징

  • 각 기능이 분리되어 있어 개발 및 유지보수가 편리
  • 각 기능의 재사용성이 높아짐
  • 디자이너와 개발자의 작업을 분업화해서 쉽게 개발이 가능

 

MVC로 이루어진 웹 애플리케이션의 동작 과정

MVC 구조와 구성 요소

MVC 구성 요소

  • Controller: 사용자의 요청 및 흐름 제어를 담당
  • Model: 비즈니스 로직을 처리
  • View: 사용자에게 보여줄 화면을 담당

컨트롤러: 사용자로부터 요청을 받아 어떤 비즈니스 로직을 처리해야 할지 제어

모델: 데이터베이스 연동 같은 비즈니스 로직을 처리

뷰: 모델에서 처리한 결과를 화면에 구현하여 클라이언트로 전송

 

 

MVC 구성 요소와 기능

MVC로 구현된 웹 애플리케이션과 각 구성 요소의 기능

Controller

  • 서블릿이 컨트롤러의 역할
  • 클라이언트의 요청을 분석
  • 요청에 대해 필요한 모델을 호출
  • Model에서 처리한 결과를 보여주기 위해 JSP를 선택

Model

  • 데이터베이스 연동과 같은 비즈니스 로직을 수행
  • 일반적으로 DAO와 VO 클래스로 이루어짐

View

  • JSP가 화면 기능을 담당
  • Model에서 처리한 결과를 화면에 표시

 

728x90