Request 내부 객체
이번엔 Request 내부 객체의 다양한 메소드를 알아보자.
당연히 이 메소드의 값을 출력하려면 out.print() 안에 넣어야 한다.
1) 한글 인코딩
말 그대로 서버에 받아온 데이터를 인코딩하는 메소드이다.
request.setCharacterEncoding("UTF-8");
2) 사용자가 입력한 정보를 가져오기
사용자가 입력한 정보를 가져오는 메소드로 getParameter()를 사용한다.
request.getParameter("uid")
3) 요청한 사용자의 정보 가져오기
서버에 요청을 넣은 사용자의 다양한 정보를 가져올 수 있다.
여기서 ip주소를 가져올 때 기본적으로 IPv6의 주소를 가져오기 때문에 IPv4로 전환하여 주소를 가져오면 더 보기 좋다.
IP주소 6자리 -> 4자리변경
Run -> Run Configurations -> Tomcat Server -> (x)=Arguments -> VM arguemnts에 아래와 같이 추가
-> 공백1칸 주고 -Djava.net.preferIPv4Stack=true -> Apply
request.getRemoteAddr()
request.getRemoteHost()
request.getRemotePort()
4) .jsp파일의 프로젝트 이름 가져오기
request.getContextPath()
5) URL과 URI 주소 가져오기
URL 주소를 가져올 때는 사용자가 요청한 전체 경로의 페이지명 또는 명령어를 가져온다.
URI 주소를 가져올 때는 사용자가 요청한 단일 페이지명 또는 명령어를 가져온다.
request.getRequestURL()
request.getRequestURI()
6) 실제 물리적 경로를 파악하기(비추천)
아래의 코드를 입력하면 images 폴더의 실제 물리적 경로를 가져온다.
비추천하는 이유는 더 좋은 객체인 application 객체를 사용하면 되기 때문이다(이클립스 내에서도 경고를 표시해준다.)
request.getRealPath("/images") // 비추천
application.getRealPath("/images") // 추천
이 때 출력된 물리적 경로는 다음과 같다.
C:\java202207\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\basic04_web\images
이 경로는 이클립스에서 톰캣 서버를 실행했을 때만 생성이 되는 임시적인 물리적 경로이다.
7) 내부 변수 선언하기
// request.setAttribute("변수명", 값)
// request.getAttribute("변수명")
request.setAttribute("user", "KOREA");
Object obj = request.getAttribute("user");
String str = (String)obj; // 다형성
out.print(str);
'⁂ JSP > : 기본 익히기' 카테고리의 다른 글
[JSP] #4-2 jsp로 CRUD 작업하기(SQL 문법) - 공사중 (0) | 2022.10.06 |
---|---|
[JSP] #4-1 jsp로 CRUD 작업하기(SQL 문법) (0) | 2022.10.06 |
[JSP] #3-2 다양한 폼 컨트롤 요소에 접근하기 (0) | 2022.10.05 |
[JSP] #3-1 폼(<form>)을 서버로 전송하기 (0) | 2022.10.05 |
[JSP] #2-4 내부 객체 (0) | 2022.10.05 |