Servlet 라이프 싸이클

최준영·2021년 8월 28일
0

Servlet 생명 주기


  • WAS는 서블릿 요청을 받으면 해당 서블릿이 메모리에 있는지 확인한다.
  • if (메모리에 없음) {
    • 해당 클래스를 메모리에 올림. 객체가 생성되므로 생성자 호출
    • init() 메소드를 실행
      }
  • service() 메소드를 실행
  • WAS가 종료되거나, 웹 어플리케이션이 새롭게 갱신될 경우 destroy() 메소드가 실행된다.

service(request, response) 메소드


  • HttpServlet의 service메소드는 템플릿 메소드 패턴으로 구현한다.

  • 클라이언트의 요청이 GET일 경우에는 자신이 가지고 있는 doGet(request, response)메소드를 호출

  • 클라이언트의 요청이 Post일 경우에는 자신이 가지고 있는 doPost(request, response)를 호출

GET vs POST


  • get과 post는 http 프로토콜을 이용해서 클라이언트에서 서버로 무언가를 전달할 때 사용하는 방식이다.
  • URL에서 직접 요청하면 메서드 값이 GET이라는 값으로 넘어간다. 데이터를 보여주기 위해 많이 사용한다. ex) http://localhost:8080/firstweb/LifecycleServlet으로 서버로 요청하는 방식이 get
  • form method의 속성값을 POST주면 service메서드는 doPost 메서드를 호출한다. 서버의 값이나 상태를 바꾸기위해 많이 사용한다.
profile
do for me

0개의 댓글