09009
[JSP] 서블릿 생명주기 (Servlet LifeCycle) 본문
다른 웹 기술들은 클라이언트의 요청이 있을 때마다 작업을 처음부터 새롭게 하여 제공한다.
하지만 서블릿은 그렇지 않다.
서블릿이 첫 번째 요청인 경우, 서블릿 클래스를 찾아 메모리에 로딩하여 인스턴스(객체)를 생성한다.
→ 이 때, 생성된 서블릿 인스턴스는 메모리에 계속 남아 있어서 이후부터는 서블릿이 호출되어도 서블릿
인스턴스가 다시 생성되지 않고 이미 로딩된 서블릿으로부터 서비스만 받기 때문에 수행 속도가 빠른 것이다.

1) 객체가 생성되어 init() 메서드가 단 한번 호출된다. init() 메서드에서는 주로 초기화 작업을 수행한다.
2) 그 후, 클라이언트의 요청이 있을 때 doGet() 혹은 doPost() 메서드가 실행된다.
여러 클라이언트가 동시에 요청을 하여도 스레드가 생성되어 동시에 doGet() 혹은 doPost() 메서드가 실행되므로
수행 속도가 빠르다.
3) 서블릿이 더 이상 서비스를 하지 않으면 destroy() 메서드가 호출된다.
destroy() 메서드는 톰캣이 종료될 때만 호출된다.
ex) 서블릿 컨테이너가 종료(톰캣 재가동)되거나 서블릿 내용이 변경되어 다시 컴파일해서 클래스 파일이 바뀔 때
'JSP' 카테고리의 다른 글
[JSP] request, getParameter() (0) | 2023.04.11 |
---|---|
[JSP] 쿼리 스트링 (0) | 2023.04.11 |
[JSP] get 방식, post 방식 (0) | 2023.04.10 |
[JSP] 서블릿 클래스 생성하기 (0) | 2023.04.10 |
[JSP] 서블릿 개념 (0) | 2023.04.10 |