모델2 방식
모델2 방식의 핵심은 웹 어플리케이션의 각 기능(클라이언트의 요청 처리, 응답 처리, 비지니스, 로직처리)을 분리해서 구현하자는 것입니다. 객체 지향 프로그래밍에서 각각의 기능을 모듈화해서 개발하자는 것과 같은 원리입니다.
웹 프로그램 개발 시 개발자가 전체 기능을 몰라도 각 기능이 모듈화되어 있으므로 자신이 맡은 부분만 개발하면 됩니다. 각 부분을 조립만 하면 나중에 전체를 사용할 수 있어 개발 효율성도 높습니다. 물론 모델2 방식으로 개발하기 위해서는 필요한 기술이나 개념을 숙지해야 하는 번거로움은 있지만 초급자라면 우선 자신이 맡은 부분만 개발하면 되므로 훨씬 효율적인 개발 방식이라고 할 수 있습니다. 그리고 개발 후 서비스를 제공할 때도 유지보수가 편할 뿐만 아니라 개발한 모듈들을 비슷한 프로그램을 만들 때 사용할 수 있어 코드 재사용성도 높습니다. 현재 모든 웹프로그램은 모델2 방식으로 개발한다고 보면 됩니다.
모델2 방식의 특징
- 각 기능이 서로 분리되어 있어 개발 유지 및 유지보수가 쉽습니다.
- 각 기능(모듈)의 재사용성이 높습니다.
- 디자이너와 개발자의 작업을 분업화해서 쉽게 개발할 수 있습니다.
- 모델2 방식과 관련된 기능이나 개념의 학습이 필요합니다.
MVC 디자인 패턴
모델2 구조에서 가장 자주 사용되는 개념이 MVC입니다. MVC란 Model-View-Controller(모델 - 뷰 - 컨트롤러)의 약자로, 일반 PC프로그램 개발에 사용되는 디자인 패턴을 웹 어플리케이션에 도입한 것입니다. 즉 웹 어플리케이션을 화면 부분, 요청 처리 부분, 로직 처리 부분으로 나누어 개발하는 방법이죠.
원래 모델2 방식의 구조가 MVC를 포함하는 개념이지만 MVC가 모델2 방식의 뼈대를 이루므로 모델2 방식으로 구현한다는 말은 곧 MVC로 구현한다는 것과 같은 의미로 보면 됩니다.
MVC의 특징은
- 각 기능이 분리되어 있어 개발 및 유지보수가 편리합니다.
- 각 기능의 재사용성이 높아집니다.
- 디자이너와 개발자의 작업을 분업화해서 쉽게 개발할 수 있습니다.
컨트롤러는 사용자로부터 요청을 받아 어떤 비지니스 로직을 처리해야 할지 제어합니다.
모델은 데이터베이스 연동같은 비지니스 로직을 처리하고, 뷰는 모델에서 처리한 결과를 화면에 구현하여 클라이언트로 전송합니다.
Controller
- 서블릿이 컨트롤러의 역할을 합니다.
- 클라이언트의 요청을 분석합니다.
- 요청에 대해서 필요한 모델을 호출합니다.
- Model에서 처리한 겨과를 보여주기 위해 JSP를 선택합니다.
Model
- 데이터베이스 연동과 같은 비지니스 로직을 수행합니다.
- 일반적으로 DAO와 VO 클래스로 이루어져 있습니다.
View
- JSP가 화면 기능을 담당합니다.
- Model에서 처리한 결과를 화면에 표시합니다.
웹 어플리케이션에서 컨트롤러의 역할은 서블릿이 담당합니다. 모델은 DAO나 VO클래스가 담당하고, 뷰 역할은 JSP가 담당합니다.
다음 글부터 mvc를 활용한 코딩을 해보겠습니다.
'2020 > JSP SERVLET' 카테고리의 다른 글
jstl download (0) | 2019.12.30 |
---|---|
MVC를 이용한 회원관리 (0) | 2019.12.30 |
Ajax 이용해 서버와 json데이터 주고받기 (0) | 2019.12.30 |
json 실습 (0) | 2019.12.30 |
ajax XML 데이터 연동 (0) | 2019.12.27 |