Web Application Achitecture는 크게 model1, model2로 나뉜다.
Model1 구조
- view와 logic을 모두 JSP페이지 하나에서 처리하는 구조
- Client로부터 요청이 들어오면 JSP페이지는 java beans나 별도의 service class를 이용해 작업을 처리하고 결과를 출력한다.
- 한 파일에서 그 기능에 대한 logic과 view를 모두 처리하므로 직관적이다. -> 개발시간단축->개발 비용 감소
- 비슷한 기능을 수행하는 파일이 있다면 그 오류가 어디서 발생했는지 찾기 힘들다 -> 유지보수, 확장이 어려움
Model2 구조
- 모든 처리를 JSP에서 하는 것이 아니라 Client의 요청에 대한 처리는 servlet, Logic 처리는 java Class, client에게 출력하는 response Page는 JSP가 담당한다.
- Model2 구조를 MVC(Model-View-Controller) Pattern이라고 한다.
- 출력을 위한 코드와 로직을 위한 코드가 분리되었기 때문에 JSP는 Model1에 비해 코드가 복잡하지 않다.
- 화면과 Logic이 분리되어 분업이 용이하다.
- 기능에 따라 code가 분리되어 유지보수가 쉽다.
- 확장성이 뛰어나다.
- 구조가 복잡하여 초기진입이 어렵고 개발시간이 증가하여 개발 비용이 증가한다.
'Study > Design Pattern' 카테고리의 다른 글
[Pattern] Factory Method Pattern (0) | 2022.01.15 |
---|---|
[Pattern] Template Method Pattern (0) | 2022.01.15 |
[Pattern] Singleton Pattern (0) | 2022.01.15 |
[Pattern] Adapter Pattern (0) | 2022.01.15 |
[Pattern] 디자인 패턴 개요 (0) | 2022.01.15 |