Spring/Spring MVC

Servlet & Servlet Container

RubyRabbit 2022. 8. 3. 16:30

Servlet

@WebServlet(name = "helloServlet", urlPatterns = "/hello")
public class HelloServlet extends HttpServlet {

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) {
        // ... 처리 로직
    }
}
  • 자바를 사용하여 클라이언트의 요청에 따라 웹페이지를 동적으로 생성하는 서버 측 기술
  • HTTP 정보를 편리하게 사용할 수 있게 해준다.
    • HttpServletRequest - HTTP 요청 정보를 편리하게 사용할 수 있는 객체
    • HttpServletResponse - HTTP 응답 정보를 편리하게 제공할 수 있는 객체

 

Servlet Container

  • 서블릿을 지원하는 WAS
  • 서블릿 객체를 생성, 초기화, 호출, 종료하는 생명주기를 관리
  • 서블릿 객체는 싱글톤으로 관리되며 애플리케이션이 로딩되는 시점에 미리 만들어두고 재활용한다. 때문에 동일한 리소스 요청에 대해서 동일한 서블릿 객체로 처리하므로 가급적 무상태성을 유지해야한다.
  • 동시 요청을 처리하기 위한 멀티 쓰레드 처리를 지원