개발자로서의 공부를 시작하고 있지만 아직까지 많이 부족하여 모르는 부분에 대해서는 포스팅을 하면서 기록차원에서 남겨두려고 합니다.
구글링을 통해서 공부 목적으로 스크랩 하는 경우가 많아 꼭 출처는 표기합니다!
웹 컨테이너란??
JSP와 서블릿을 사용한 웹 서버는 크게 URL 주소의 해석을 맡아 주는 HTTP 서버와 서블릿 클래스 또는 JSP 파일의 실행 요청을 처리해주는 웹 컨테이너(Web Container)로 구성된다. HTTP 서버는 단순히 어떤 주소(URL) 요청이 들어왔을 경우 그 주소에 미리 매핑되어 있는 콘텐츠(HTML 파일이나 이미지 등)를 사용자의 브라우저에 응답 형태로 전송하는 역할을 한다. 이 때 만일 요청된 URL이 서블릿 클래스 또는 JSP파일(ex. http://www.sevlet.com/servlet 또는 http://www.wervlet.com/home.jsp)일 경우 HTTP 서버는 이를 웹 컨테이너에서 처리하도록 클라이언트의 요청을 넘겨준다. 웹 컨테이너에서는 요청된 URL에 맞는(미리 설정된) 서블릿 클래스 또는 JSP 파일을 실행하여 그 결과를 HTTP 서버에 넘겨주게 되고 이는 응답 메시지의 형태로 사용자의 브라우저에 전성된다.
즉 웹 컨테이너란 웹 서버의 내부에서 서블릿 클래스 또는 JSP 파일을 실행하기 위한 실행 환경을 제공하는 역할을 하며 특히 서블릿 클래스에 대한 웹 컨테이너를 서블릿 컨테이너, JSP 파일에 대한 웹 컨테이너를 JSP 컨테이너라고 한다. 다만 실제적으로 이 둘을 혼용하여 웹 컨테이너(서블릿 컨테이너)로 통칭하는 경우가 많다. 대표적인 웹 컨테이너로 자카르타 톰캣, 웹로직, Resin 등이 있다.
(reference : 모델 2로 구현하는 자바 웹 프로그래밍 JSP 2.2 & Servlet 3.0, 오정원 저, 혜지원)
출처 : http://egloos.zum.com/lechocolat/v/442712