JSP 기반의 웹 개발 -> Servlet 을 이용한 웹 개발 -> Spring MVC -> Spring Boot
JSP 기반
클라이언트 측 코드와 사용자의 요청을 처리하는 서버 측 Java 코드가 합쳐진 형태
단점)
1. 백엔드 / 프론트엔드의 구분이 힘들기 때문에 유지 보수가 어려움.
2. 코드가 너무 길어 가독성이 떨어짐
Servlet
Java 코드만 별도의 서블릿 클래스로 분리
JSP 기반 웹 개발에 비해 어느정도 클라이언트와 서버 측의 분리가 일어남
Spring MVC
Servlet 개발 방식에 비해 눈에 보이지 않는 작업들을 Spring이 대신 처리해 줌.
하지만 기본 구조를 설정 작업이 여전히 불편 -> Spring Boot 의 등장
Spring Boot
데이터베이스 액세스 단계까지 손쉽게 사용 가능
클라이언트에서 전달한 데이터를 알아서 객체에 저장해 줌