HttpServletRequest
- HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편할 것이다.
- Servlet은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다.
- 그리고 그 결과를 HttpSevletRequest 객체에 담아서 제공한다.
HTTP 요청 메시지
POST /save HTTP/1.1
Host: localhost:8080
Content-Type: application/x-ww-form-urlencoded
username=hyun6ik&age=28
- START LINE
- HTTP 메소드
- URL
- QueryString
- Skima, Protocol
- 헤더
- 바디
- form 파라미터 형식 조회
- messageBody 데이터 직접 조회
HttpServletRequest 부가 기능
임시 저장소 기능
- 해당 HTTP 요청이 시작부터 끝날 떄까지 유지되는 임시 저장소 기능을 지원한다.
- 저장 : request.setAttribute(name, value);
- 조회 : request.getAttribute(name);
세션 관리 기능
- request.getSession(create: true);
중요
- HttpServletRequest, HttpServletReponse를 사용할 때 가장 중요한 점은 이 객체들이 HTTP 요청 메시지, HTTP 응답 메시지를 편리하게 사용하도록 도와주는 객체라는 점이다.
- 따라서 이 기능에 대해서 깊이 있는 이해를 하려면 HTTP 스펙이 제공하는 요청,응답 메시지 자체를 이해해야 한다.