롸?
MVC 패턴 본문
1. 개요
MVC 패턴은 웹 애플리케이션 개발 방법론 중 하나로 크게 모델 1과 모델 2로 나뉜다.
Model(모델) : 데이터를 가진 객체, 파라미터로 자주 쓰인다. DB의 테이블과 대응하는 경우가 많다.
View(뷰) : UI를 담당한다. HTML, CSS, Javascript 등으로 만들어진 컨테이너이다.
Controller(컨트롤러) : UI를 통한 사용자 입력 명령에 응답하고 데이터 흐름 제어를 담당한다.
MVC 패턴의 장점은 사용자에게 보여지는 영역과 비즈니스 로직, 데이터 구조가 서로 분리되어 있다는 점이다.
2. 모델 1 구조
모델 1은 뷰와 컨트롤러 모두 JSP페이지 하나에서 처리하는 구조를 말하며, 보통 소규모 프로젝트에 권장된다. 모델 1을 구성하는 요소는 크게 JSP, 자바빈(혹은 서비스 클래스)로 나뉜다.
장점 | 단점 |
- 빠르고 개발하기 쉽다. - 때문에 숙련자가 아니어도 구현이 용이하다. |
- 뷰와 로직이 섞이기 때문에 jsp 파일이 커지고, 복잡해진다. - 때문에 유지보수가 어려워진다. - 백엔드와 프론트엔드 분업이 힘들다. |
2. 모델 2 구조
모델 2는 뷰와 컨트롤러를 분리하는 방식을 말하며 중대형 프로젝트에 권장된다. 크게 서블릿, jsp, 자바빈으로 구성되어있다. 요청이 들어오면 요청에 대한 로직처리는 모델이, 요청 결과는 뷰가, 이를 위한 흐름 제어는 컨트롤러가 담당한다.
장점 | 단점 |
- 코드를 분리하기 때문에 파일이 복잡하지 않다. - 디자이너와 개발자의 분업이 가능하다. - 유지보수에 유리하다. |
- 설계에 어려움을 겪을 수 있다. - 구조가 복잡하여 개발 난이도가 높다. |
참고
'WEB > JSP & Servlet' 카테고리의 다른 글
Beans (0) | 2020.04.04 |
---|---|
JSTL과 EL (0) | 2020.03.24 |
<jsp:include> vs <%@ include %> (0) | 2020.03.19 |
JDBC Connection pooling (0) | 2020.03.18 |
RequestDispatcher & sendRedirect 방식 (0) | 2020.03.17 |
Comments