當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java HttpServlet用法及代碼示例


HttpServelt 是一個抽象類,它位於包“javax.servlet.http.HttpServlet”下。要創建 servlet,該類必須擴展 HttpServlet 類並至少重寫其方法之一(doGet、doPost、doDelete、doPut)。 HttpServlet 類擴展了 GenericServlet 類並實現了 Serialized 接口。

HttpServlet 類的構造函數

HttpServlet()

這是一個抽象類,因此構造函數不執行任何操作。

Methods of HttpServlet Class

1.doGet()方法

  • 該方法用於在服務器端處理GET請求。
  • 此方法還自動支持 HTTP HEAD(HEAD 請求是一個 GET 請求,響應中不返回任何人)請求。
  • GET類型請求通常用於預處理一個要求。

修飾符和類型:受保護的無效

用法:

protected void doGet(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 GET 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 GET 請求。

2.doPost()方法

  • 該方法用於在服務器端處理POST請求。
  • 該方法允許客戶端一次向網絡服務器發送無限長度的數據。
  • POST類型請求通常用於post-process請求。

修飾符和類型:受保護的無效

用法:

protected void doPost(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request - 一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

拋出:

  • IO異常-如果 servlet 處理 POST 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 POST 請求。

3.doHead()方法

  • 重寫此方法來處理 HEAD 請求。
  • 在此方法中,響應僅包含標頭,但不包含消息正文。
  • 該方法用於提高性能(避免計算響應體)。

修飾符和類型:受保護的無效

用法:

protected void doHead(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 HEAD 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 HEAD 請求。

4.doPut()方法

  • 重寫此方法來處理 PUT 請求。
  • 該方法允許客戶端將信息存儲在服務器上(將圖像文件保存在服務器上)。
  • 服務器(通過服務方法)調用此方法來處理 PUT 請求。

修飾符和類型:受保護的無效

用法:

protected void doPut(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response - 一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

拋出:

  • IO異常-如果 servlet 處理 PUT 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 PUT 請求。

5.doDelete()方法

  • 重寫此方法以處理 DELETE 請求。
  • 此方法允許客戶端從服務器刪除文檔或網頁。
  • 使用此方法時,將受影響的 URL 的副本保存在臨時存儲中可能會很有用,以避免數據丟失。

修飾符和類型:受保護的無效

用法:

protected void doDelete(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request - 一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 Servlet 處理 DELETE 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 DELETE 請求。

6.doOptions()方法

  • 重寫此方法以處理 OPTIONS 請求。
  • 該方法用於確定服務器支持哪些 HTTP 方法並返回適當的標頭。

修飾符和類型:受保護的無效

用法:

protected void doOptions(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 OPTIONS 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 OPTIONS 請求。

7.doTrace()方法

  • 重寫此方法來處理 TRACE 請求。
  • 此方法將 TRACE 請求發送的標頭返回給客戶端,以便它們可以在調試中使用。

修飾符和類型:受保護的無效

用法:

protected void doTrace(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request - 一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response - 一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 TRACE 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 TRACE 請求。

8.getLastModified()方法

  • 此方法返回 HttpServletRequest 對象上次修改的時間。
  • 如果時間未知,該方法將返回負數。
  • 這種方法使瀏覽器和代理緩存更有效地工作。
  • 還減少了服務器和網絡資源的負載。

修飾符和類型:保護長

用法:

protected long getLastModified(HttpServletRequest request)

參數:要求 -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。

9.service()方法

該方法接收來自公眾的標準 HTTP 請求服務方法並將它們分派給做XXX此類中定義的方法。

修飾符和類型:受保護的無效

用法:

protected void service(HttpServletRequest request, HttpServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 HTTP 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 HTTP 請求。

10.service()方法

該方法用於將客戶端請求分派給公共服務方法。

修飾符和類型:公共空白

用法:

public void service(ServletRequest request,ServletResponse response) 
throws ServletException,IOException

參數:

  • request -一個 HttpServletRequest 對象,其中包含客戶端對 servlet 發出的請求。
  • response -一個 HttpServletResponse 對象,其中包含 servlet 發送到客戶端的響應。

異常:

  • IO異常-如果 servlet 處理 HTTP 請求時檢測到輸入或輸出錯誤。
  • ServletException -用於處理 HTTP 請求。

例子:

Java


package com.gfg;
import javax.servlet.*;
import javax.servlet.http.*;
// here GFGServlet class inherit HttpServlet
public class GFGServlet extends HttpServlet {
    // we are defining the doGet method of HttpServlet
    // abstract class
    public void doGet(HttpServletRequest rq,
                      HttpServletResponse rs)
    {
        // here user write code to handle doGet request
    }
    // we are defining the doPost method of HttpServlet
    // abstract class
    public void doPost(HttpServletRequest rq,
                       HttpServletResponse rs)
    {
        // here user write code to handle doPost request
    }
} // class ends

Note: This is server-side code, it is only for clarification on how to use HttpServlet class.



相關用法


注:本文由純淨天空篩選整理自sharmaharsh_05大神的英文原創作品 HttpServlet Class In Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。