top
Loading...
Servlet 簡介

Servlet 簡介

Servlet 是什么?

Java Servlet 是運行在 Web 服務器或應用服務器上的程序,它是作為來自 Web 瀏覽器或其他 HTTP 客戶端的請求和 HTTP 服務器上的數據庫或應用程序之間的中間層。

使用 Servlet,您可以收集來自網頁表單的用戶輸入,呈現來自數據庫或者其他源的記錄,還可以動態創建網頁。

Java Servlet 通常情況下與使用 CGI(Common Gateway Interface,公共網關接口)實現的程序可以達到異曲同工的傚果。但是相比於 CGI,Servlet 有以下幾點優勢:

  • 性能明顯更好。
  • Servlet 在 Web 服務器的地址空間內執行。這樣它就沒有必要再創建一個單獨的進程來處理每個客戶端請求。
  • Servlet 是獨立於平台的,因為它們是用 Java 編寫的。
  • 服務器上的 Java 安全管理器執行了一系列限製,以保護服務器計算機上的資源。因此,Servlet 是可信的。
  • Java 類庫的全部功能對 Servlet 來說都是可用的。它可以通過 sockets 和 RMI 機製與 applets、數據庫或其他軟件進行交互。

Servlet 架構

下圖顯示了 Servlet 在 Web 應用程序中的位置。

Servlet 任務

Servlet 執行以下主要任務:

  • 讀取客戶端(瀏覽器)發送的顯式的數據。這包括網頁上的 HTML 表單,或者也可以是來自 applet 或自定義的 HTTP 客戶端程序的表單。
  • 讀取客戶端(瀏覽器)發送的隱式的 HTTP 請求數據。這包括 cookies、媒體類型和瀏覽器能理解的壓縮格式等等。
  • 處理數據併生成結果。這個過程可能需要訪問數據庫,執行 RMI 或 CORBA 調用,調用 Web 服務,或者直接計算得出對應的響應。
  • 發送顯式的數據(即文檔)到客戶端(瀏覽器)。該文檔的格式可以是多種多樣的,包括文本文件(HTML 或 XML)、二進製文件(GIF 圖像)、Excel 等。
  • 發送隱式的 HTTP 響應到客戶端(瀏覽器)。這包括告訴瀏覽器或其他客戶端被返回的文檔類型(例如 HTML),設置 cookies 和緩存參數,以及其他類似的任務。

Servlet 包

Java Servlet 是運行在帶有支持 Java Servlet 規範的解釋器的 web 服務器上的 Java 類。

Servlet 可以使用 javax.servletjavax.servlet.http 包創建,它是 Java 企業版的標准組成部分,Java 企業版是支持大型開發項目的 Java 類庫的擴展版本。

這些類實現 Java Servlet 和 JSP 規範。在寫本教程的時候,二者相應的版本分別是 Java Servlet 2.5 和 JSP 2.1。

Java Servlet 就像任何其他的 Java 類一樣已經被創建和編譯。在您安裝 Servlet 包併把它們添加到您的計算機上的 Classpath 類路徑中之後,您就可以通過 JDK 的 Java 編譯器或任何其他編譯器來編譯 Servlet。

下一步呢?

接下來,本教程會帶你一步一步地設置您的 Servlet 環境,以便開始後續的 Servlet 使用。因此,請系緊您的安全帶,隨我們一起開始 Servlet 的學習之旅吧!相信您會很喜歡這個教程的。

北斗有巢氏 有巢氏北斗