반응형

1. MVC

- Model, View, Controller의 약어로 클라이언트와 상호작용하는 S/W를 디자인함에 있어 세가지 요소로 쪼개어 하는 것을 말합니다.

 

MVC 패턴 Model2  
Model 서비스 클래스 or javabean   비즈니스 로직을 처리하는 모든 것들이 모델에 속합니다. 컨트롤러로부터 특정 로직에 대한 처리 요청(ex: 게시판 글쓰기, 회원가입, 로그인 등)이 들어오면 이를 수행하고 수행 결과를 컨트롤러에 반환한다. 필요한 정보는 request 객체나 session 객체에 저장하기도 한다.
Controller 서블릿   MVC 패턴(모델 2) 모든 흐름 제어를 맡는다. 브라우저로부터 요청이 들어오면, 어떤 요청인지를 분석하여 이 요청을 처리하기 위한 모델을 사용하여 처리한다. 사용한 모델로부터 처리 결과르 받으면 추가로 처리하거나 가공해야할 정보가 있다면 처리 후 request 객체나 session객체에 저장하고, 뷰(jsp페이지)를 선택하여 foward나 redirect 하여 클라이언트에 출력한다
View JSP 페이지   클라이언트에 출력되는 화면을 말합니다. 모델 1과 달리 로직 처리를 위한 코드가 내포되어 있지 않습니다. 요청 결과의 출력 뿐만 아니라 컨트롤러에 요청을 보내는 용도로 사용됩니다. request 객체나 session 객체에 저장된 정보를 토대로 화면을 출력합니다.

 

2. Model1

- JSP로 구현한 기존 웹 어플리케이션은 모델1 구조로 웹 브라우저의 요청을 JSP페이지가 받아서 처리하는 구조입니다.

JSP페이지에 비즈니스 로직을 처리하기 위한 코드와 웹 브라우저에 결과를 보여주기 위한 출력 관리 코드가 뒤섞여 있는 구조로 JSP페이지 안에서 모든 정보를 표현(view)하고 저장(model)하고 처리(control)되므로 재사용이 힘들고 읽기도 힘들어 가독성이 떨어집니다.

 

  즉, 요약하자면 모든 클라이언트의 요청과 응답을 jsp가 담당하는 구조로 장점은 단순한 페이지 작성으로 쉽게 구현이 가능합니다. 중소형 프로젝트에 적합하다고 할 수 있습니다. 단점으로는 웹 어플리케이션이 복잡해지면 유지보수가 힘들어 집니다.

 

3. Model2

- Model1 구조와 달리 웹 브라우저의 요청을 하나의 서블릿이 받습니다. 서블릿은 웹 브라우저의 요청을 알맞게 처리한 후 결과를 JSP페이지로 포워딩합니다.

  즉, 클라이언트의 요청 처리와 응답처리, 비지니스 로직 처리하는 부분을 모듈화시킨 구조로 장점은 처리작업의 분리로 인해 유지보수와 확장이 용이하지만 구조 설계를 위한 시간이 많이 소요되므로 개발 기간이 증가합니다.

 

 

 

이미지 출처 - http://changhozz.tistory.com/126


반응형

'2020 > IT Q_A' 카테고리의 다른 글

Ajax란?  (0) 2020.02.13
xml에서 주석처리 단축키  (0) 2020.01.30
2020 정보처리기사 정보  (0) 2020.01.22
BootStrap 추천 사이트  (0) 2020.01.21
ERROR 1406 (3D000): No database selected  (0) 2020.01.17
블로그 이미지

꽃꽂이하는개발자

,