JinHee's Board
MVC 디자인 패턴과 Model1, Model2 본문
디자인 패턴
- 소프트웨어의 개발 방법을 공식화 한 것, 규칙, 구현자들 간의 커뮤니케이션 효율성을 높이는 기법
MVC(Model - View - Controller)
- 웹 어플리케이션을 개발할때 각각의 역할 별 작업이 가능하도록 분담하는 설계 패턴을 의미
MVC MODEL1, 2의 차이와 요청처리 과정
MODEL1
View와 데이터 처리과정이 모두 JSP파일 하나에서 실행됨
장점: 구조가 단순하여 익히기 쉽다. 단점: 화면 출력과 데이터 처리가 모두 한 페이지에 담겨있어 코드가 복잡해진다 |
MODEL2
사용자가 Controller를 조작하면 Controller는 Model을 통해서 테이터를 가져오고 그 정보를 바탕으로 View에서 시각정보로 처리한다
요청이 들어오면 요청에 대한 로직처리는 Model의 Service에서 Dao까지 담당하고, 이에 대한 결과를 JSP에 출력하고 모든 흐름제어는 Controller에서 담당한다.
MODEL2의 구성요소 : 서블릿, JSP, 자바빈 & Service, Model
Model(Service, Dao) : 비즈니스 로직을 처리하는 것들, 컨트롤러로부터 요청을받아 처리후 결과 반환을 다시 컨트롤러에게 한다.
View(Jsp) : 컨트롤러에서 반환된 request나 Session 객체에 저장된 정보를 화면으로 출력한다.
Controller(Servlet) : 들어온 요청이 어떤 요청인지 분석하고 해당하는 Model을 사용할수 있도록 흐름제어를 한다.
장점: 뷰와 로직처리에 대한 코드가 분리되어 있어 코드의 복잡함이 감소하고, 분업에 유리하다(유지보수에도 용이) 단점: 습득이 어렵고 작업량이 많다. |
'공부한 내용정리 > 기타' 카테고리의 다른 글
Apache Spark - OpenSearch 연동 문제 해결 (0) | 2021.10.30 |
---|---|
Logstash(로그스태시) -csv 데이터 적재 및 ruby 플러그인 사용 (0) | 2021.09.25 |
NIFI - InvokeHTTP를 활용한 OpenAPI 연결 (0) | 2021.04.03 |
NIFI- nginx 와 연결하여 접속 링크 바꾸기 (0) | 2021.03.28 |
RSA 암호화 파이썬 코딩 - 2018.11.25 (0) | 2020.09.30 |