정적인 데이터만 제공 가능했다. HTML.
CGI(Common Gate Interface) 구현체를 이용해 동적 데이터를 제공했었음.
그러나 문제점이 존재했었음
1. 프로세스를 이용해 요청을 처리 (프로세스는 단일 업무만 실행가능, 비용이 큼)
2. 같은 요청이 와도 같은 CGI 구현체를 생성
이를 개선하기 위해 서블릿이 등장함
CGI를 기반으로 만들어짐. 기존의 CGI 문제점을 다음과 같이 해결.
클라이언트는 HTTP 메시지를 통해 웹서버에 요청함
서블릿은 개발자가 일일이 작업해줘야 하는 파싱작업을 API 및 메서드를 통해 제공함
=> 프론트 컨트롤러 패턴을 통해 해결
기존의 단점을 개선한 구조가 스프링 웹 MVC에서 구현됨
개발자는 Spring Web MVC에서 제공되는 이점을 즉, 디스패처 서블릿의 요청 처리 관련 구현체들을 사용하면서 비즈니스 로직에 집중할 수 있다