본문 바로가기

프로그래밍/JSP

[JSP 요약 정리] 3. request 기본 객체

3. request 기본 객체

1) request 기본 객체

- 웹 브라우저의 요청 정보를 제공하는 객체

- 클래스 정보

https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/http/HttpServletRequest.html


2) request 객체의 제공 기능

- 클라이언트(웹 브라우저)와 관련된 정보 읽기 기능

- 서버와 관련된 정보 읽기 기능

- 클라이언트가 전송한 요청 파라미터 읽기 기능

- 클라이언트가 전송한 요청 헤더 읽기 기능

- 클라이언트가 전송한 쿠키 읽기 기능

- 속성 처리 기능


3) 클라이언트 및 서버 정보 관련 메소드

- String getRemoteAddr() : 클라이언트의 IP주소 반환

- long getContentLength() : 클라이언트가 전송한 요청 정보의 크기 반환

- String getCharacterEncoding() : 클라이언트의 요청 정보 인코딩 반환

- String getContentType() : 클라이언트의 요청 정보 contentType 반환

- String getProtocol() : 클라이언트가 요청한 프로토콜 반환

- String getMethod() : 웹 브라우저가 정보 전송시 사용한 방식 반환

- String getRequestURI() : 웹브라우저가 요청한 URL에서 경로 반환

- String getContextPath() : JSP 페이지가 속한 웹 어플리케이션의 context path 반환

- String getServerName() : 연결시 사용한 서버 이름 반환

- int getServerPort() : 서버가 실행중인 포트번호 반환


4) 요청 파라미터 관련 메소드

- String getParameter(String name) : 이름이 name인 파라미터의 값 반환

- String[] getParameterValues(String name) : 이름이 name인 모든 파라미터의 값들 반환

- Enumeration getParameterNames() : 파라미터의 이름 목록을 반환

- Map getParameterMap() : 파라미터와 값을 맵으로 구성해서 반환


5) GET, POST 전송 방식

- GET 전송 방식: URL에 파라미터를 붙여서 전송 (?이름1=값1&이름2=값2)

- POST 전송 방식: 데이터를 이용해서 전송(보안성 높음)


6) 요청 파라미터 인코딩

- 웹 브라우저의 파라미터를 WAS에서 확인할 때 인코딩 캐릭터셋이 동일해야 함

- void setCharacterEncoding(String env) : 캐릭터셋 지정 메소드

- 인코딩 규칙

<a> 태그, <form> 태그의 GET 지정 -> 웹 페이지 인코딩 사용

웹 브라우저 주소에 직접 문자열 포함 -> 웹 브라우저마다 상이함


7) Header 관련 메소드

- HTTP 프로토콜은 헤더에 부가정보를 담도록 하고 있음

- String getHeader(String name) : name의 헤더값을 반환

- Enumeration getHeaders(String name) : name의 헤더 목록을 반환

- Enumeration getHeaderNames() : 모든 헤더의 이름을 반환

- int getIntHeader(String name) : name의 값을 정수값으로 반환

- long getDateHeader(String name) : name의 값을 시간 값으로 반환(Unix time 기준)