request對象
主要用於接收用戶端發送而來的請求資訊,用戶端的請求資訊被封裝在request對象中,通過它才能瞭解到客戶的需求,然後做出響應。它是HttpServletRequest類的執行個體。
序號 方 法 說 明
1 object getAttribute(String name) 返回指定屬性的屬性值
2 Enumeration getAttributeNames() 返回所有可用屬性名稱的枚舉
3 String getCharacterEncoding() 返回字元編碼方式
4 int getContentLength() 返回請求體的長度(以位元組數)
5 String getContentType() 得到請求體的MIME類型
6 ServletInputStream getInputStream() 得到請求體中一行的二進位流
7 String getParameter(String name) 返回name指定參數的參數值
8 Enumeration getParameterNames() 返回可用參數名的枚舉
9 String[] getParameterValues(String name) 返回包含參數name的所有值的數組 如checkbox這種多選框可用此方法
10 String getProtocol() 返回請求用的協議類型及版本號碼
11 String getScheme() 返回請求用的計劃名,如:http.https及ftp等
12 String getServerName() 返回接受請求的伺服器主機名稱
13 int getServerPort() 返回伺服器接受此請求所用的連接埠號碼
14 BufferedReader getReader() 返回解碼過了的請求體
15 String getRemoteAddr() 返回傳送此請求的用戶端IP地址
16 String getRemoteHost() 返回傳送此請求的用戶端主機名稱
17 void setAttribute(String key,Object obj) 設定屬性的屬性值
18 String getRealPath(String path) 返回一虛擬路徑的真實路徑
19 void setCharacterEncoding(String code)用於設定傳遞的字元編碼,可用於解決亂碼問題
20
<%@ page contentType="text/html;charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
<html>
<head>
<title>request對象_例1</title>
</head>
<body bgcolor="#FFFFF0">
<form action="" method="post">
<input type="text" name="qwe">
<input type="submit" value="提交">
</form>
請求方式:<%=request.getMethod()%><br>
請求的資源:<%=request.getRequestURI()%><br>
請求用的協議:<%=request.getProtocol()%><br>
請求的檔案名稱:<%=request.getServletPath()%><br>
請求的伺服器的IP:<%=request.getServerName()%><br>
請求伺服器的連接埠:<%=request.getServerPort()%><br>
用戶端IP地址:<%=request.getRemoteAddr()%><br>
用戶端主機名稱:<%=request.getRemoteHost()%><br>
表單提交來的值:<%=request.getParameter("qwe")%><br>
</body>
</html>
<%@ page contentType="text/html;charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
<%@ page import="java.util.Enumeration"%>
<html>
<head>
<title>request對象_例2</title>
</head>
<body bgcolor="#FFFFF0">
<form action="" method="post">
使用者名稱:<input type="text" name="username">
密 碼:<input type="text" name="userpass">
<input type="submit" value="進入" >
</form>
<%
String str="";
if(request.getParameter("username")!=null && request.getParameter("userpass")!=null){
Enumeration enumt = request.getParameterNames();
while(enumt.hasMoreElements()){
str=enumt.nextElement().toString();
out.println(str+":"+request.getParameter(str)+"<br>");
}
}
%>
</body>
</html>
<%@ page contentType="text/html;charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
<html>
<head>
<title>request對象_例3</title>
</head>
<body bgcolor="#FFFFF0">
<form action="" method="post">
擅長:<input type="checkbox" name="cb" value="ON1">VC++
<input type="checkbox" name="cb" value="ON2">JAVA
<input type="checkbox" name="cb" value="ON3">DELPHI
<input type="checkbox" name="cb" value="ON4">VB
<br>
<input type="submit" value="進入" name="qwe">
</form>
<%
if(request.getParameter("qwe")!=null ){
for(int i=0;i<request.getParameterValues("cb").length;i++){
out.println("cb"+i+":"+request.getParameterValues("cb")[i]+"<br>");
}
out.println(request.getParameter("qwe"));
}
%>
</body>
</html>