Web Application Architecture
- Model 1과 Model2로 나뉨
- JSP가 클라이언트의 요청에 대한 로직 처리와 reponse page에 대한 처리를 모두 하느냐 아님 reponse page만 처리하는지가 가장 큰 차이점
용어 정리
DAO = Database Acess Object
MVC = Model View Controller
DTO = Data Transform Object
Model 1
- 뷰와 로직을 JSP 페이지 하나에서 처리하는 구조
- 클라이언트로부터 요청이 들어오게 되면 JSP 페이지는 beans나 별도의 service class 를 통하여 작업을 처리, 결과를 client에 출력한다.
장점 :
- 구조가 단순하며 직관적이기 때문에 배우기가 쉽다.
- 개발 시간이 비교적 짧기 때문에 개발 비용이 감소한다.
단점 :
- 출력을 위한 view 코드와 로직 처리를 위한 java 코드가 섞여 있기 때문에JSP 코드 자체가 복잡해진다.
- 분업이 힘들다.
- 유지보수가 어렵다
- 확장성이 나쁘다 (frameoword의 도입 등 )
Model 2
- 모든 처리를 JSP 페이지에서 하는 것이 아니라 client 요청에 대한 처리는 servlet, logic 처리는 java client에게, 출력하는 response page를 JSP가 담당한다.
장점 :
- 코드가 복잡하지 않음
- 화면단과 logic단이 분리되었기에 분업이 용이
- 기능에 따라 code가 분리되었기 떄문 유지보수가 쉬움
- 확장성이 뛰어남
단점 :
- 구조가 복잡하여 초기 진입이 어렵다.
- 개발시간의 증가로 개발의 비용이 증가한다.
추후 servlet과 JSP는 SPRING으로 대체
client는 REACT나 VIEW.JS 와 같은 프레임워크로 대체된다.
'[BACK-END]' 카테고리의 다른 글
JSP (Java Server Page) (0) | 2023.03.22 |
---|