자바(Java)/JAVA 2EE

request 객체를 이용한 헤더와 파라미터 출력 예제

본클라쓰 2008. 12. 22. 16:59

request 객체는 웹 브라우저에서 JSP페이지로 전달되는 정보의 모임으로 HTTP 헤더와 HTTP 바디로 구성되어 있다.

 

 

 

request객체를 사용한 간단한 소스코드

 

[ SimulatorForm.jsp(request바디정보에 전달할 내용을 입력받는 페이지) ]

<%@ page language="java" contentType="text/html;charset=EUC-KR" pageEncoding="Euc-kr" %>

<html>

<body>
 <h2> 내장 객체의 정보 전달 </h2>
 
  <form method="post" action="SimulatorPro.jsp">  
  학번 : <input type="text" name="num"><br>
  이름 : <input type="text" name="name"><br>
  학년 : <input type="radio" name="grade" value="1" checked>1학년 
     <input type="radio" name="grade" value="2" >2학년 
        <input type="radio" name="grade" value="3" >3학년<br>
  선택과목 :
  <select name="subject">
   <option value="JAVA">JAVA</option>
   <oprion value="JSP">JSP</select>
  </select><br>
  <input type="submit" value="입력완료">
 </form>
</body>
</html>

 

[ SimulatorPro.jsp ( 전달받는 정보와 헤더정보를 표시하는 페이지 ) ]

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>


<% request.setCharacterEncoding("euc-kr"); %>
<%@ page import="java.util.Enumeration" %>

 

<!-- request객체의 parameter 정보-->
<%
 String num=request.getParameter("num");
    String name=request.getParameter("name");
    String grade=request.getParameter("grade");
    String subject=request.getParameter("subject");
%>

 

<!-- request객체의 헤더정보 -->
<%
 /* 메소드 이름 */
 String methods[]={"getProtocol()", "getServerName()","getMethod()",
  "getQueryString()", "getRequestURI()", "getRemoteHost()",
  "getRemoteAddr()"};  

 /* 해당하는 내용 */
 String contents[]={"프로토콜", "서버 도메인 이름", "요청에 사용된 요청방식",
  "요청에 사용된 Query", "URL로부터 얻은 URI값", "호스트 이름",
  "웹 브라우저의 IP주소"}; 
 
 /* 실제 정보 */
 String value[]={request.getProtocol(),request.getServerName(), request.getMethod(),
  request.getQueryString(), request.getRequestURI(), request.getRemoteHost(),
  request.getRemoteAddr()};   
  
 Enumeration en=request.getHeaderNames(); // 모든 헤더정보
%>

 

<head><title> request 객체 </title>
</head>
<body>

 <h2> request객체의 헤더정보 </h2>
  <table border="1" width="700">
   <tr bgcolor="yellow"> 
    <th width="150"> 메소드 </th>
    <th width="200"> 내용 </th>
    <th width="350"> 실제결과 </th>
   </tr>
  <%
   for(int i = 0 ; i<methods.length; i++){ %>
    <tr>
    <td width="150"> <%=methods[i] %> </td>
    <td width="200"> <%=contents[i] %> </td>
    <td width="350"> <%=value[i] %> </td>
   </tr> 
  <% }
  %>
  </table> 
  
 <h2> request객체의 바디정보 </h2>
 <table border="1" width="300">
  <tr>
   <td width="150">학번</td>
   <td width="150"><%=num %></td>
  </tr>
  <tr>
   <td width="150">이름</td>
   <td width="150"><%=name %></td>
  </tr>
  <tr>
   <td width="150">학년</td>
   <td width="150"><%=grade %></td>
  </tr>
  <tr>
   <td width="150">선택과목</td>
   <td width="150"><%=subject %></td>
  </tr>
  
</body>

 

[ 실제 결과 ]