Spring/Spring MVC
[Spring MVC] 서블릿, JSP로 웹 어플리케이션 설계하기
잉숭
2021. 5. 14. 18:33
웹 어플리케이션 설계
회원 정보
이름: username
나이: age
기능 요구사항
회원 저장
회원 목록 조회
서블릿으로 웹 어플리케이션 설계하기
1. 멤버 생성 폼
2. 멤버 리스트
JSP로 웹 어플리케이션 설계하기
1. 멤버 생성 폼
2. 멤버 리스트
서블릿, JSP의 한계
서블릿의 사용
서블릿으로 개발할 때는 View 화면을 위한 HTML을 만드는 작업이 자바 코드에 섞여 지저분하고 복잡했다
이는 JSP로 넘어오면서 어느 정도 해결되었지만 아직 해결되지 않는 몇가지 고민이 남는다
JSP의 사용
JSP를 사용한 덕분에 View를 생성하는 작업을 깔끔하게 가져가고, 중간중간 동적으로 변경이 필요한 부분만 자바 코드를 적용했다
하지만 이렇게 해도 JSP의 책임이 너무 크다는 문제가 발생한다
위 예시를 보면 JSP 상위 부분은 자바 코드에 해당되고 하위 부분이 View 영역에 해당된다
자바 코드에는 리포지토리를 호출하는 코드와 모든 모든 멤버를 호출하는 기능이 포함된다
이렇게 작은 프로젝트임에도 JSP파일은 충분히 복잡하다
만약 거대한 프로젝트에 JSP파일이 사용된다면 그 복잡성 때문에 유지보수는 불가능에 가까워질 것이다
MVC 패턴의 등장
JSP를 사용하면서 발생한 문제는 MVC 패턴이 등장하면서 해결된다
비즈니스 로직은 서블릿처럼 다른곳에서 처리하고, JSP는 목적에 맞게 HTML View에 집중하는 방식을 MVC 패턴이라고 한다
다음 포스팅에서는 기존의 프로젝트를 MVC 패턴을 적용해서 리팩터링해볼 것이다