[JAVA] 서블릿(Servlet) 정리

2020. 9. 27. 17:56Programming Language/JAVA

반응형

서블릿(Servlet) 이란?

웹 프로그래밍에서 클라이언트의 요청(Request)을 처리하고 그 결과를 다시 클라이언트에게 

전송(Response)하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그래밍 기술


서블릿(Servlet) 특징

  • 클라이언트의 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트
  • html을 사용하여 요청에 응답한다.
  • Java Thread를 이용하여 동작한다.
  • MVC 패턴에서 Controller로 이용된다.
  • HTTP 프로토콜 서비스를 지원하는 javax.servlet.http.HttpServlet 클래스를 상속받는다. UDP보다 속도가 느리다.
  • HTML 변경 시 Servlet을 재컴파일해야 하는 단점이 있다.

서블릿(Servlet) 동작 방식

  • 사용자(클라이언트)가 URL을 클릭하면 HTTP Request를 Servlet Container로 전송한다.
  • HTTP Request를 전송받은 Servlet Container는 HttpServletRequest, HttpServletResponse 두 객체를 생성한다.
  • web.xml은 사용자가 요청한 URL을 분석하여 어느 서블릿에 대해 요청을 한 것인지 찾는다.
  • 해당 서블릿에서 service메소드를 호출한 후 클리아언트의 POST, GET여부에 따라 doGet() 또는 doPost()를 호출한다.
  • doGet() or doPost() 메소드는 동적 페이지를 생성한 후 HttpServletResponse객체에 응답을 보낸다.
  • 응답이 끝나면 HttpServletRequest, HttpServletResponse 두 객체를 소멸시킨다.
반응형