Servlet - WAS 구동과정 및 Servlet의 생명 주기
Temp
2010. 9. 13. 17:27
클라이언트 서버 request(요청방식: get, post)을 시작으로 동적, 정적문서의 구별을한다
WAS(Web Application Server) : 아파치 , iis , 웹로직 , 썬서버...
Servlet Container : 톰켓 , 레진 ...
WAS는 정적 문서는 바로 반환하고 동적인 문서인 경우에는 Servlet,JSP로 전환한다.
1.Servlet문서 컴파일 = ~.Class
2.메모리상의 Servlet 객체화
3.doGet() 또는 doPost()수행
이후 HTML 로 변환하여 클라이언트로 response(응답)한다.
다른 클라이언트가 접속시에는 1,2번을 수행하지 않고 바로 3번을 수행하게 된다.
(이미 메모리상에 올라가 있기 때문에...)
Servlet의 생명 주기
init() 생성자 다음으로 딱 한번 호출된다. (초기화 목적)
Service() 서비스는 여러번 호출된다. (준비작업 : 요청방식 구별...등등)
Service는 두가지로 호출된다 .
doGet() , doPost() 이 두가지는 다시하나로 뭉쳐진다. (알고리즘 즉 로직이 구현된다.)
이 두가지가 다시 destroy() 로가며 destroy로 가기 전 순환구조를 가진다.
(소멸 : 서버가 내려갈때 )
두번째 수행부터는 init를 수행하지 않고 서비스부터 수행된다(재사용한다).
[출처] Servlet - WAS 구동과정 및 Servlet의 생명 주기|작성자 비틀박