본문으로 바로가기

5.(JSP) MVC 패턴(model1,model2)

category SPRING/Servlet || JSP 2021. 3. 4. 06:29
728x90
반응형
SMALL

MVC 패턴이란?


Model, View, Controller 의 합성어로 소프트웨어 공학에서 사용되는 디자인 패턴

 

*디자인 패턴이란?

소프트웨어의 개발 방법을 공식화 한 것,

구현자들 간의 커뮤니케이션의 효율성을 높이는 기법

 

  • Model : 백그라운드에서 동작하는 로직 처리(데이터를 가진 객체, 파라미터로 주로 쓰임),DB의 테이블과 대응
  • View : 사용자가 보게 될 결과 화면을 출력(html/css/js를 모아둔 컨테이너)
  • Controller : 사용자의 입력처리와 흐름제어를 담당(사용자가 접근한 URL에 따라 사용자의 요청사항을 파악한 뒤, 그 요청에 맞는 데이터를 Model에 의뢰하고 데이터를 View에 반영하여 사용자에게 알려줌)

 

모델 1 vs 모델 2


  • Model 1 : 비즈니스 로직 영역(Controller)에 프레젠테이션 영역(View)을 같이 구현하는 방식. 사용자의 요청을 jsp가 전부 다 처리한다.  웹 브라우저 사용자의 요청을 받은 jsp는 자바빈이나 서비스 클래스를 사용하여 웹브라우저가 요청한 작업을 처리하고 그 결과를 출력한다

 

<출처 - changhozz.tistory.com/126> 

 

  • Model 2 : 비즈니스 로직 영역과 프레젠테이션 영역이 분리된 구현 방식. 사용자의 요청을 Servlet이 받는다. Servlet은 요청을 View 또는 Model로 보내줄 것인지 결정하여 전송, View는 사용자에게 보여주는 역할만 담당하며 실질적인 기능의 부분은 Model에서 담당

 

<출처 - changhozz.tistory.com/126>

 

모델 1, 모델 2의 장단점


  • 장점
  • Model 1: 빠르고 쉽게 개발할수 있음
  • Model 2: View와 Controller가 분리되어 있기에 디자이너와 개발자의 분업이 가능하며 유지보수에 유리

 

  • 단점
  • Model 1: jsp 파일 자체가 너무 무거워 지고 Controller와 View가 혼재하므로 향후 유지보수에 어려움이 있음
  • Model 2: 설계에 어려움을 겪을 수 있고, 개발 난이도가 높아짐

 

 

출처: https://wooaoe.tistory.com/15 [개발개발 울었다]

728x90
반응형
LIST