[Servlet / JSP] MVC 패턴

suyeon·2022년 6월 27일
0

Servlet / JSP

목록 보기
9/9
post-thumbnail

📌 MVC(Model-View-Controller) 패턴

  • MVC : 모델(Model), 뷰(View), 컨트롤러(Controller)의 약자로, 소프트웨어를 개발하는 방법론의 일종이다.
  • Model(DTO(DAO)) : 업무 처리 로직(비즈니스 로직) 혹은 데이터베이스와 관련된 작업을 담당
  • View(JSP) : JSP 페이지와 같이 사용자에게 보여지는 부분을 담당
  • Controller(Servlet) : 모델과 뷰를 제어하는 역할. (자바와 JSP를 제어)
    사용자의 요청을 받아서 그 요청을 분석하고, 필요한 업무 처리 로직(모델)을 호출한다.
    모델이 결과값을 반환하면 출력할 뷰(JSP 페이지)를 선택한 후 전달한다.

📌 모델 1

  • JSP 페이지만을 사용
  • 순수 JSP

  • 처리 방식 > 공통점
    - 상단에서 주로 자바 작업을 한다. (JDBC) > Servlet 담당
    - 하단에서 주로 자바의 결과물을 가지고 화면에 출력 작업(HTML, CSS, JavaScript)을 한다. > JSP 담당

[ 장단점 ]

  1. 장점
  • 개발 속도가 빨라 개발비용이 감소함
  • 구조가 단순하여 배우기 쉬움
  1. 단점
  • 뷰와 컨트롤러 2가지 기능 모두를 JSP에서 구현해야 하므로 코드가 복잡해지고 유지보수가 어려움
  • 확장성이 나쁨

📌 모델 2

Model2MVC 패턴설명
Service, DTO(DAO), Java BeansModel데이터 계층
JSPView출력 계층
ServletController제어 계층

  • 처리 방식
    - 고객 요청 > Servlet 시작 ~ 끝 > (업무 위임 + 데이터 전달) > JSP 시작 ~ 끝

[ 장단점 ]

  1. 장점
  • 모델, 뷰, 컨트롤러가 각자의 역할을 수행하므로 업무 분담이 명확해지고 코드가 간결하며 유지보수가 쉬움
  • 확장성이 뛰어남
  1. 단점
  • 구조가 복잡하여 익숙하지 않다면 개발 기간이 길어질 수 있음
  • 개발시간의 증가로 개발비용이 증가함

0개의 댓글