🤔 Servlet & JSP ?
Servlet
.java
인 파일
- 자바의 일반적인 클래스와 동일한 개념
- 웹을 다룰 수 있도록 해주는
HttpServlet
클래스를 상속받은 클래스를 의미
JSP
.jsp
인 파일
- Java Server Page
- HTML 문서 안에 자바 언어를 삽입해 사용할 수 있도록 해줌
Servlet 과 JSP는 완전 다른 개념이 아니며, Servlet을 사용해 웹을 만들 경우 화면 인터페이스 구현이 워낙 까다로운 단점을 보완하기 위해 만든 스크립트 언어가 JSP라고 볼 수 있다.
웹 어플리케이션 구조
논리적 구조 : WEB, WAS, DB
물리적 구조 : 사용자수 & 서버스펙 & 보안 & 네트워크 구조 등에 따라 맞추어짐
- 사용자가 URL(또는 IP)를 통해 Web 서버를 호출하고 요청사항을 객체(request)에 담아 전송
- WEB 서버는 요청 객체(request)를 받아서 바로 처리하거나 WAS(어플리케이션 서버)로 객체 전달
- WAS 서버는 요청에 대한 내용과 요청 객체(request)를 받아 적절히 처리(필요시 DB작업)
- WAS 서버는 처리 후 결과를 응답 객체(response)에 담아 WEB서버로 회신
- WEB 서버는 응답 객체(response)를 다시 사용자에게 회신
- 사용자의 브라우저는 WEB서버가 보내준 코드를 해석해 화면을 구성하여 출력
Servler / JSP
- JSP -> Servlet 파일(
.java
) 파일로 변환
- Servlet 파일로 직접 작성하는 것과 같은 코드로 변환
- 변환된 서블릿 파일을 다시 컴파일해
.class
파일로 만든 뒤 실행
- 실행 결과는 자바 언어가 모두 사라진 HTML 코드가 되 최종적으로 HTML로 변환되어 사용자에게 전달