
✅ JSP는 실행되기 전에 JSP → Java → Class 과정을 거침
✔ 서블릿은 처음부터 Java 클래스(바이트코드)로 작성되므로 바로 실행 가능
✔ JVM이 직접 실행 가능하여 성능이 더 좋음
http://localhost:8088/MyServlet)✔ JSP는 사실 내부적으로 서블릿으로 변환된 후 실행됨
✔ 따라서 JSP는 실행 전에 "서블릿 변환 과정"이 필요함 (2단계 처리)
http://localhost:8088/views/index.jsp)JSP 파일 (index.jsp)
↓ 변환 (JSP 컨테이너)
Java 서블릿 파일 (index_jsp.java)
↓ 컴파일 (JVM)
클래스 파일 (index_jsp.class)
↓ 실행 (Tomcat 서블릿 컨테이너)
최종 HTML 응답 반환
| 구분 | 서블릿 | JSP |
|---|---|---|
| 초기 실행 속도 | 빠름 (바로 실행) | 느림 (서블릿 변환 과정 필요) |
| 실행 방식 | Java 클래스 실행 | JSP → 서블릿 변환 후 실행 |
| 코드 작성 편의성 | 불편 (HTML 작성 어려움) | 편리 (HTML과 Java 코드 혼합 가능) |
✔ 서블릿은 바로 실행 가능하지만, JSP는 한 번 변환해야 실행됨 (2단계 처리)
✔ JSP는 HTML을 포함하기 쉬워 UI 작업이 편리하지만, 서블릿은 코드가 복잡해질 수 있음
✔ JSP는 직접 실행되지 않고, 서블릿(Java)으로 변환된 후 실행됨.
✔ JSP → Java (index_jsp.java) → Class (index_jsp.class) → 실행
✔ 해당 변환 과정은 처음 요청 시에만 발생하고, 이후에는 캐시되어 빠르게 실행됨.
🚀 JSP는 "보이지 않는 서블릿"일 뿐, 결국은 Java 코드로 실행되는 것!