request 기본 객체는 JSP 페이지에서 가장 많이 사용되는 기본 객체로서 웹 브라우저 의 요청과 관련이 있습니다.
윂 브라우저에 웹 사이트의 주소를 입력하면, 웹 브라우저는 해당 웹 서버에 연결한 후 요청 정보를 전송하는데, 이 요청 정보를 제공하는 것이 바로 request 기본 객체입니다.
request 기본 객체가 제공하는 기능은
- 클라이언트(웹 브라우저)와 관련된 정보 읽기 기능
- 서버와 관련된 정보 읽기 기능
- 클라이언트가 전송한 요청 파라미터 읽기 기능
- 클라이언트가 전송한 요청 헤더 읽기 기능
- 클라이언트가 전송한 쿠키 읽기 기능
- 속성 처리 기능
request 클라이언트가 전송한 정보와 서버 정보를 구할수 있는 메서드를 제공하는데 메서드는 아래와 같습니다.
메서드 | 리턴 타입 | 설명 |
getRemoteAddr() | String | 웹 서버에 연결한 클라이언트의 ip 주소를 구합니다. 게시판이나 방명록 등에서 글 작성자의 ip 주소가 자동으로 입력되기도 하는데, 이ㅣ때 입력되는 ip주소가 바로 이 메서드를 사용하여 구현한 것입니다. |
getContentLength() | long | 클라이언트가 전송한 요청 정보의 길이를 구한다. 전송된 데이터의 길이를 알 수 없는 경우 -1 을 리턴한다. |
getCharacterEncoding() | String | 클라이언트가 요청 정보를 전송할 때 사용한 캐릭터의 인코딩을 구한다. |
getContentType() | String | 클라이언트가 요청 정보를 전송할 때 사용한 컨텐츠 타입을 구한다. |
getProtocol() | String | 클라이언트가 요청한 프로토콜을 구한다. |
getMethod() | String | 웹 브라우저가 정보를 전송할 때 사용한 방식을 구합니다. |
getRequestURI() | String | 웹 브라우저가 요청한 URL에서 경로를 구합니다. |
getContextPath() | String | JSP 페이지가 속한 웹 어플리케이션의 컨텍스트 경로를 구한다. |
getContextPath() | String | 연결할 때 사용한 서버 이름을 구한다. |
getServerPort() | int | 서버가 실행중인 포트 번호를 구한다. |
위의 표에 나열한 기능들을 사용하여 클라이언트와 서버 정보를 보여주는 페이지를 만들어보겠습니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
클라이언트IP = <%=request.getRemoteAddr() %><br>
요청정보길이 = <%=request.getContentLength() %><br>
요청정보 인코딩 = <%=request.getCharacterEncoding() %><br>
요청정보 컨텐츠 타입 = <%=request.getContentType() %><br>
요청정보 프로토콜 = <%=request.getProtocol() %><br>
요청정보 전송방식 = <%=request.getMethod() %><br>
요청 URL = <%=request.getRequestURI() %><br>
컨텍스트 경로 = <%=request.getContextPath() %><br>
서버이름 = <%=request.getContextPath() %><br>
서버포트 = <%=request.getServerPort() %><br>
</body>
</html>
이런 실행 결과가 나옵니다.
참고로 계속 에러가 나오면 내가 WebContent에 jsp파일을 만든건지 잘확인해 봅시다.
WEB-INF 같은 폴더에 만들면 안됨
'JSP' 카테고리의 다른 글
JSP 쿠키 (0) | 2022.07.13 |
---|---|
JSP 예외처리 (0) | 2022.07.13 |
JSP HTML FORM (0) | 2022.07.11 |
JSP 시작 웹 프로그래밍 (0) | 2022.07.08 |
JSP 플러그인 (0) | 2022.07.07 |