wiki:JspRequest

request 내장객체

  • javax.servlet.ServletRequest 타입의 객체
  •  HttpServletRequest => ServletRequest implement
  • request => HttpServletRequest 의 인스턴스
  • 클라이언트로부터 HttpServletRequest 객체를 받아서 사용

request 내장 객체의 파라미터 요청 메소드

request 내장 객체의 클라이언트 정보 메소드

request 내장객체 중요 메소드

java.lang.Object  getAttribute(java.lang.String name)

Returns the value of the named attribute as an Object, or null if no attribute of the given name exists.

<%= request.getAttribute("pangCnt") %> //expression 타입일 경우
     int pangCount = (Integer)request.getAttribute("pangCnt"); //타입 캐스팅 형변환
     out.print(pangCount * 100 + "원 <br />");        
     out.println(Integer.parseInt(request.getAttribute("pangCnt").toString())*100 + "원"); //레퍼클래스 이용
%>
  • getAttribute 메소드는 setAttribute 메소드로 저장한 request 객체에서 불러올 수 있다.
  • 만약, 페이지 이동시에는 request 객체가 변경되므로 저장된 내용은 삭제된다.
  • 단. getRequestDispatcher() 를 이용한 페이지 이동이나, <jsp:forward/> 액션태그를 이용한 페이지 이동시에는 request 객체가 변경되지 않으므로 속성값은 사용가능

java.util.Enumeration<java.lang.String>  getAttributeNames()

Returns an Enumeration containing the names of the attributes available to this request.

out.print("getAttributeNames() : ");
Enumeration<String> attrNames = request.getAttributeNames();
while(attrNames.hasMoreElements()){
out.print(attrNames.nextElement()+"<br />");
}

  • getAttributeNames메소드의 리턴값은 Enumeration 객체 타입이므로 형변환을 통해 이용가능하다.

java.lang.String  getParameter(java.lang.String name)

Returns the value of a request parameter as a String, or null if the parameter does not exist.

<% String gender = request.getParameter("gender"); %>

java.util.Enumeration<java.lang.String>  getParameterNames()

Returns an Enumeration of String objects containing the names of the parameters contained in this request.

out.print("getParameterNames() : ");
Enumeration<String> paraNames = request.getParameterNames();
while(paraNames.hasMoreElements()) {
out.print(paraNames.nextElement()+"<br />");
}
  • getParameterNames메소드의 리턴값은 Enumeration 객체 타입이므로 형변환을 통해 이용가능하다.

java.lang.String[]  getParameterValues(java.lang.String name)

Returns an array of String objects containing all of the values the given request parameter has, or null if the parameter does not exist.

if(request.getParameterValues("hobby") != null) { 
out.print(request.getParameterValues("hobby")); 
String[] hobby = request.getParameterValues("hobby"); 
//제어문 - 반복
int size = hobby.length;
out.print(size);
//while 문 초기값 : i, 조건문 : i <= size, 증감식: i++
int i = 0;
while (i < size) {
if (i == size-1)out.println(hobby[i]);
elseout.println(hobby[i] + ", ");
i++;
}
}
  • getParameterValues() 메소드 리턴 타입은 String 배열객체로 String[] 타입 변수에 등록 가능

javax.servlet  RequestDispatchegetRequestDispatcher(java.lang.String path)

Returns a RequestDispatcher? object that acts as a wrapper for the resource located at the given path.

<%request.getRequestDispatcher("/notice/List.jsp").forward(request, response);%>

 void setAttribute(java.lang.String name, java.lang.Object o)

Stores an attribute in this request.

<% request.setAttribute("pangCnt", 30); %>

 void setCharacterEncoding(java.lang.String env)

Overrides the name of the character encoding used in the body of this request.

<%request.setCharacterEncoding("UTF-8"); %>

Attachments