반응형

[광고 누르면 오늘의 행운 상승!!]

MVC Architecture란?

Model, View, Controller를 분리한 디자인 패턴으로 컴포넌트의 변경이 다른 영역 컴포넌트에 영향을 미치지 않으며 컴포넌트 간 결합도가 낮아 프로그램 수정이 용이하다.

장점

  • 화면과 비즈니스 로직을 분리해서 작업 가능
  • 영역별 개발로 인해 확장성이 뛰어남
  • 표준화된 코드를 사용

MVC(Model, View, Controller)

Model

  • 애플리케이션의 상태(data)를 나타낸다.
  • 일반적으로 POJO로 구성된다.
  • Java Beans

View

  • 디스플레이 데이터 또는 프리젠테이션
  • Model data의 렌더링을 담당하며, HTML output을 생성한다.
  • JSP
  • JSP 이외에도 Thymeleaf, Groovy, Freemarker등 여러 Template Engine이 있다.

Controller

  • View와 Model 사이의 인터페이스 역할
  • Model/View에 대한 사용자 입력 및 요청을 수신하여 그에 따라 적절한 결과를 Model에 담아 View에 전달한다.
  • 즉, Model Object와 이 Model을 화면에 출력할 View Name을 반환한다.
  • Controller —> Service —> Dao —> DB
  • Servlet
반응형

+ Recent posts