JSP

[JSP] Request

SangRok Jung 2022. 7. 13. 13:06
반응형

 

 

 

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