[JSP] 2. Servlet이란?
이번 포스트에는 JSP와 붙어다니는 Servlet에 대해서 정리해보자
생각 날 때마다 정리하는게 좋은거다.
2-1. Servlet이란?
웹 프로그램을 개발하기 위해 Java로 만든 표준 규약을 Servlet이라고 한다.
서블릿 초기화 과정
- 클라이언트의
Request
방식(GET/POST))에 따라 WAS
는 정적 문서는 바로 반환하고 동적인 문서는 Servlet, JSP로 전환- 톰캣과 같은
WAS
가 java 파일을 컴파일해서Class파일 생성
- 메모리에 올려
Servlet 객체
를 만듬 - Servlet 객체는
doPost
,doGet
을 통해 요청에Response
합니다.
서블릿 생명주기
init
은 서블릿이 메모리에 최초 한번 로드 될때 실행- 서블릿은 javax.servlet.http 패키지에 준비되어 있는
HttpServlet
클래스를 상속하여 만든다. Request
가 오면 HttpServletRequest, HttpServletResponse 두 객체를 생성service
메소드는 HTTP Method 타입에 따라 doGet 혹은 doPost를 호출doGet/doPost
메소드는 동적인 페이지를 생성- HttpServletResponse 객체에
Response
한다. - 응답이 완료 되면 HttpServletRequest, HttpServletResponse 두 객체를 삭제
destory
는 서버를 내릴 때 수행되는 콜백
잠깐 여기서 HTTP에 대해서 얘기하면 HTTP는 TCP프로토콜에 기초한 어플리케이션 계층 프로토콜이다.
웹 서비스를 위해 웹 서버와 클라이언트가 통신하는 규약에 따라 서버가 응답한 후에 서버는 클라이언트의 상태를 유지하지 않는다.
그래서 Cookie나 Session 등으로 상태를 유지한다.
하여튼, Servlet은 웹프로그래밍에서 WAS를 통해 컴파일 된 후 동작하는 Java 프로그래밍 기술이다.
출처