반응형
Request
웹 브라우저에서 JSP 페이지로 전달되는 정보의 모임
- HTTP header, body로 구성.
- web container가 요청된 HTTP Message를 통해 HttpServletRequest object를 얻어냄.
- JSP 페이지 에서는 HttpServletRequest object를 request 객체명으로 사용.
Method
사용자가 form에 입력한 요구 사항을 얻어낼 수 있도록 하는 method.
String getParameter(name)
- Parameter Variable name에 저장된 값을 얻어내는 method.
- 해당 Variable name이 없으면 null을 return.
- 단독값을 입력하는 text, select, redio 등에 사용.
String[] getParameterValues(name)
- Parameter Variable name에 저장된 모든 값을 얻어내는 method.
- 변수값은 String Array로 return.
- 다중값을 입력하는 checkbox 등에 사용.
Enumeration getPrameterNames()
- 요청에 의해 넘어오는 모든 Parameter variable을 java.util.Enumeration type으로 return
- Variable이 가진 Object들을 save하기 위해 Enumeration Collection을 사용.
String getProtocl() // 웹 서버로 요청시 사용 중인 protocal return.
String getServerName() // 서버의 도메인 name return.
String getMethod() // 요청에 사용된 요청 방식 (GET, POST 등) return.
String getQueryString() // 요청에 사용된 Query String return.
String getRequestURL() // 요청에 사용된 URL 주소 return.
String getRequestURI() // 요청에 사용된 URL 값으로 부터 URI값 return.
String getRemoteHost() // Web Server 정보를 요청한 Web Browser의 host name return.
String getRemoteAddr() : String // Web Server로 정보를 요청한 Web browser의 ip address return.
String getServerPort() // Web Server로 요청시 서버의 port number return.
String getContextPath() : String // 해당 JSP페이지가 속한 Web Application의 콘텍스트 경로 return.
String getHeader(name) // Web Server로 요청 시 HTTP 요청 header 이름인 name에 해당하는 속성값 return.
Enumeration getHeaderNames() // HTTP 요청 header에 있는 모든 header name return.
* URL(Uniform Resource Locator)
- 웹상에서 서비스를 제공하는 각 서버들이 응답시 전송하는 파일들의 위치.
- 접속하는 서비스의 종류, 도메인명, 파일 위치가 포함.
- EX) http://127.0.0.1:8080/study/ch04/requestTest1.jsp
*URI(Uniform Resource Identifier)
- 인터넷상에 있는 자원을 나타내는 유일한 주소.
- URL에서 HTTP Protocol, Host name, port number를 제외한 부분이 URI.
- EX) study/ch04/requestTest1.jsp
예제
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="common.Person" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
request.setAttribute("reqPerson", new Person("임걱정", 45));
request.setAttribute("reqAddress", "충남 계롱산 기슭");
request.removeAttribute(name);
%>
<%
// 2. seconds root
String name = "";
int age = 0;
String address = "";
Person p = (Person)(request.getAttribute("reqPerson"));
name = p.getName();
name = p.getAge();
// removeAttribute
request.removeAttribute("reqAddress"); //null
try{
name = request.getAttribute("reqAddress").toString();
}
catch(Exception e){
out.print("주소가 없습니다.")
}
%>
// 1. first root 단순하나 무식한 방법
<h2> <%= ((Person)(request.getAttribute("reqPerson"))).getName() %> </h2>
// 2. seconds root
<h2> <%= name %></h2>
<h2> <%= age %></h2>
<h2> <%= address %></h2>
<%
// 포워딩을 할 dispatcher를 가져온다.
RequestDispatcher rd = request.getRequestDispatcher("RequestForward.jsp?id=admin&pwd1234").forward(request, response);
re.forward(request, response);
%>
<script>
//바로 forward가 되기 때문에 alert가 나오지 않는다.
alert("aaa")
</script>
</body>
</html>
반응형
'JSP' 카테고리의 다른 글
[JSP] Application (0) | 2022.07.15 |
---|---|
[JSP] 내장객체, DTO & JavaBeans (0) | 2022.07.13 |
[JSP] Response (0) | 2022.07.12 |
[JSP] out. (0) | 2022.07.12 |
[JSP] Scriptlet (0) | 2022.07.08 |