서블릿은 자바 기반의 웹 프로그램 개발을 위해 만들어진 기술이다. 따라서 자바 코드로 작성되어있다.
자바 코드로 작성되었기 때문에 이를 실행할 수 있는 서버 소프트웨어인 WAS가 필요하다.
앞서, 설명한 글에서 서블릿은 HTML과 데이터를 재구성한 뒤에 클라이언트에 전달되므로 소스 코드를 수정하기 어렵고 가독성이 떨어진다.
따라서, HTML에 자바 코드를 작성하는 식의 JSP가 탄생했다.
HTML에서 자바 코드를 사용하므로 자바의 많은 라이브러리들을 사용할 수 있다.
HTML 중심으로 가독성이 좋다.
물론 JSP에게도 단점이 존재한다.
이러한 단점을 해결하기 위해 JSTL/EL이 등장했다.
JSTL은 커스텀 태그를 사용하여, 가독성을 보다 높이고 자바 코드를 모르더라도 쉽게 작성할 수 있다.
EL은 표현 언어로 자바 객체의 멤버 출력이 가능하다.
📌 서블릿은 자바 코드로 이루어져 있고, HTML과 데이터를 재구성하여 클라이언트에 전달한다.
📌 서블릿은 수정하기 어렵고 가독성이 떨어져 JSP가 등장했다.
📌 JSP는 HTML 문법으로 작성할 수 없는 부분을 자바 코드를 작성하여 가독성이 떨어지고 자바 코드를 알고 있어야 하기 때문에 작성이 어렵다.
📌 이를 해결하기 위해 커스텀 태그인 JSTL이 등장했고 HTML과 같은 마크업 언어 형태이기 때문에 가독성이 좋다.
📌 EL은 표현 언어로 자바 객체의 멤버 변수를 가져와 사용할 수 있으므로 편리하다.