HttpServletRequest 역할

HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편할 것입니다. 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱합니다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다.

HttpServletRequest를 사용하면 다음과 같은 HTTP 요청 메시지를 편리하게 조회할 수 있습니다.

HTTP 요청 메시지

//...1
POST /save HTTP/1.1
//...2
Host: localhost:8080
Content-Type: application/x-www-form-urlencoded //HTML FORM을 통해서 전달이 되었다는 것을 알 수 있다.

//...3
username=kim&age=20
  1. START LINE
  2. 헤더
  3. 바디

HttpServletRequest 객체는 HTTP 요청 메시지만 읽는게 아니라 추가로 여러가지 부가기능도 함께 제공합니다.

임시 저장소 기능

HTTP 요청 메시지가 고객의 요청이 오고 응답이 나갈 때까지가 생존범위라서 그때까지 존재합니다.

세션 관리 기능