ServletRequest介面
ServletRequest
的對象用於向Servlet提供客戶端請求資訊,如內容類型,內容長度,參數名稱和值,標題資訊,屬性等。
ServletRequest介面的方法
ServletRequest
介面中定義了很多方法。 其中一些如下:
編號 | 方法 | 描述 |
---|---|---|
1 | public String getParameter(String name) |
用於通過名稱獲取參數的值。 |
2 | public String[] getParameterValues(String name) |
返回一個包含給定參數名稱的所有值的String數組。它主要用於獲取多選列表框的值。 |
3 | java.util.Enumeration getParameterNames() |
返回所有請求參數名稱的枚舉。 |
4 | public int getContentLength() |
返回請求實體數據的大小,如果未知則返回-1 。 |
5 | public String getCharacterEncoding() |
返回此請求輸入的字元集編碼。 |
6 | public String getContentType() |
返回請求實體數據的網路媒體類型,如果未知則返回null 。 |
7 | public ServletInputStream getInputStream() throws IOException |
返回用於讀取請求正文中二進位數據的輸入流。 |
8 | public abstract String getServerName() |
返回接收請求的伺服器的主機名。 |
9 | public int getServerPort() |
返回接收到此請求的端口號。 |
ServletRequest顯示用戶名稱的示例
在這個例子中,在servlet中顯示用戶提交上來的名字。這裏使用getParameter()
方法返回指定請求參數名稱的值。
打開Eclipse,創建一個名稱為:ServletRequest 的動態Web網站專案,專案的目錄結構如下 -
關鍵代碼如下 -
ServletRequest.java -
package com.zaixian;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ServletRequest
*/
public class ServletRequest extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
String name = request.getParameter("name");// will return value
if (name == null || name == "") {
name = "";
}
pw.println("Welcome " + name);
pw.close();
}
}
index.html -
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Welcome - ServletRequest</title>
</head>
<body>
<div style="text-align: center;">
<form action="/ServletRequest/welcome">
名字:<input type="text" name="name"><input type="submit"
value="提交">
</form>
</div>
</body>
</html>
web.xml -
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>ServletRequest</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>ServletRequest</servlet-name>
<servlet-class>com.zaixian.ServletRequest</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletRequest</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
</web-app>
ServletRequest介面的其他示例
ServletRequest的示例顯示所有頭資訊
在這個例子中,顯示servlet的頭資訊,如內容類型,內容長度,用戶代理等。
上一篇:
使用NetBeans創建Servlet
下一篇:
Servlet顯示所有頭資訊