웹 컨테이너(Web Container)
- JSP와 서블릿을 실행할 수 있는 소프트웨어를 웹 컨테이너 또는 서블릿 컨테이너라고 함
- 순수 서블릿을 처리하는 경우 서블릿 컨테이너라 부름.
서블릿 컨테이너를 포함한 JSP, HTTP 서버로서의 기능을 포함하기 때문에 웹 컨테이너라고 부름
- 웹 컨테이너로는 아파치 톰캣(Apache Tomcat), IBM 웹스피어(Web Sphere) 어플리케이션 서버, 레진(Resin),
티맥스의 제우스(JEUS), 이클립스 재단의 제티(jetty) 등이 있음
서블릿 라이프 사이클(생명 주기)
- Servlet은 GenericServlet 클래스나 HttpServlet 클래스를 상속받아서 작성하며, init(), service(), destroy() 총 세 개의 메서드에 의한 생명주기를 갖음
- 서블릿이 로딩 될 때 단 한 번 init() 메서드를 호출하여 서블릿 인스턴스를 초기화
- service() 메서드는 클라이언트의 요청이 있을 때마다 반복적으로 호출하여 클라이언트 요청을 처리
- 서블릿을 제거해야 하는 경우 컨테이너는 서블릿의 destroy() 메서드를 실행하고, 서블릿을 종료
일반적으로 DB 연결 해제, 백그라운드 스레드 중지 등 사용한 자원들을 종료
request
- 웹 컨테이너가 클라이언트로부터 요청 받은 정보를 서블릿(jsp)에게 전달하기 위해 사용
response
- 클라이언트 요청에 대한 응답을 MIME 자료 형태로 반환할 때 사용.
웹 서버에서 웹 클라이언트(브라우저)에게 자료를 반환할 때 사용
setAttribute(), getAttribute(), getParameter() 메서드
- setAttribute(), getAttribute() 메서드
- page, request, response, session, application과 같은 영역에 임의의 속성값을 저장하거나 가져올 때 사용
- void setAttribute(String key, Object o) : 주어진 이름으로 속성 값 설정
- Object getAttribute(String key) : 주어진 이름의 속성 값을 반환
- String getParameter(String name)
- 클라이언트가 GET / POST 방식으로 서버에 전송한 요청 파라미터 값을 반환
- 요청 받은 파라미터 중 지정한 이름의 첫 번째 파라미터 값을 반환
'Tech Interview > Web' 카테고리의 다른 글
MVC 패턴 (0) | 2023.02.15 |
---|---|
쿠키와 세션, 필터 (0) | 2023.02.14 |
포워딩과 리다이렉트 (0) | 2023.02.13 |
GET 방식과 POST 방식 (0) | 2023.02.11 |
웹 서버 및 WAS (0) | 2023.02.10 |