본문으로 바로가기

JSP에서의 MVC 모델1, 모델2

category Back-End/JSP 2018. 9. 17. 22:09
반응형

1. MVC 패턴

Model : 컨트롤러의 요청을 받아 데이터의 추출, 입력, 갱신 등 작업 수행

View : 웹브라우저 등 사용자에게 보여지는 영역을 담당, 컨트롤러가 응답하는 내용을 받아 브라우저에 보여줄 페이지를 만듬

Controller : 웹브라우저에서 요청을 받아 알맞은 Model들이 요청에 맞는 데이터를 처리하게 하고

             처리결과를 받아 다시 알맞은 View에게 넘겨주는 역할


2. 모델1 구조

사실상 별도의 컨트롤러가 없지만 굳이 분리하자면

JSP가 Controller, View 역할을 다하는 구조

웹브라우저의 요청을 받아 알맞은 Model을 선택해 처리요청하는 컨트롤러의 역할, Model의 처리결과를 받아 웹브라우저에 응답될 웹페이지를 생성하는 뷰의 역할을 같이 한다.


장점

변경사항, 요구사항이 적거나 소규모 프로젝트에 적합, 빠르게 개발할 수 있음


단점

JSP페이지 내에 View관련 코드, Model에 요청처리를 요구하는 Controller관련 코드가 섞여 분리하기 어려움

가독성 떨어지고 차후 수정이 어려움


3. 모델2 구조

1번에서 얘기한 대로 나눠져있음


Servlet이 컨트롤러 역할, JSP가 View역할함

모든 웹브라우저의 요청은 Servlet으로 전달돼고 Servlet이 Model에게 데이터 처리요청하고, 결과를 받아서 JSP를 호출해 View역할 수행하게함


Model2가 Model1에 비해 개발 초기의 부하가 비교적 높고, 아키텍처에 대한 수준 높은 이해를 요구하지만 재사용성이 높고 확장이 Model1에 비해 용이하다. 무엇보다 Model2는 그 구조적 특징으로 인해 자연스럽게 MVC 각 영역의 역할이 구분되도록 해준다.


반응형

'Back-End > JSP' 카테고리의 다른 글

JSP 란?  (1) 2018.09.17
서블릿 초기화 파라미터(ServletConfig)  (0) 2018.09.17
JSP Servlet Context 단위 공유 파라미터  (0) 2018.09.17
JSP Servlet 한글 인코딩 처리  (0) 2018.09.17
Servlet 기본 및 예제  (0) 2018.09.17