JSP로 구성할 수 있는 웹 애프리케이션 아키텍처는 크게 Model1, Model2로 나뉜다.
이 모델의 큰 차이점은 JSP가
- 결과의 출력만 담당하는가?
- 결과의 출력뿐만 아니라 요청에 대한 모든 로직을 처리하는가?
Model1
- JSP 페이지가 비즈니스 로직과 데이터 로직을 모두 처리하는 구조
- JSP 페이지가 사용자의 요청을 직접 받아 처리하고, 필요한 데이터 처리를 수행 후 결과를 사용자에게 직접 반환함
- 간단하고 작은 애플리케이션에는 적합하지만, 비즈니스 로직과 프레젠테이션 로직이 혼합되어 있어 유지 보수 측면에서 분리함
Model2
웹브라우저 사용자의 요청을 servlet이 받음
servlet은 웹브라우저의 요청을 받아 view로 보내줄지 model로 보내줄 것인지 정해서 전송해 줌
view 페이지는 사용자에게 보여주는 역할만 담당하고, 실질적인 기능 부분은 model에서 담당함
- Model2 구조란 MVC 패턴을 웹 개발에 도입한 구조
- JPA를 사용하여 필요한 데이터를 조회하거나 변경함, 그 후 결과 값을 view에 전달함
- 관심사 분리를 통해 유지 보수와 애플리케이션 확장성을 향상함
- 비즈니스 로직과 프레젠테이션 로직이 분리되어 있어, 독립적으로 관리하고 개발할 수 있음
'CS' 카테고리의 다른 글
[CS] HTTP, HTTPS (0) | 2024.05.08 |
---|---|
[CS] 메모리 구조 (0) | 2024.05.08 |
[CS] N+1 문제 해결 (0) | 2024.05.08 |
[CS] 인터페이스 vs 추상 클래스 (0) | 2024.05.08 |
[CS] 영속성 컨텍스트 (Persustence Context) (0) | 2024.05.08 |