1. 程式人生 > >Servlet概述

Servlet概述

htm project 企業版 跨平臺 eclipse項目 開發項目 gif exc over

以下內容引用自http://wiki.jikexueyuan.com/project/servlet/overview.html:

一、什麽是Servlets?

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

使用Servlet,可以通過Web頁面表單來收集用戶的輸入,顯示從數據庫或其他來源的記錄,動態地創建Web頁面。

Java Servlet通常服務於使用Common Gateway Interface(CGI)實現的同樣的目的程序。但與CGI相比,Servlet具有幾個優點。

  • 性能更好。

  • Servlet在Web服務器的地址空間內執行。沒有必要創建一個單獨的進程來處理每個客戶端請求。

  • 由於Servlet是用Java編寫的,所以它是跨平臺的。

  • 在服務器上的Java安全性管理器執行的一些限制來保護服務器上的資源。所以Servlet是可信的。

  • Java類庫的完整的功能是對Servlet來說是可用的。它可以與小應用程序、數據庫或其他軟件通過通信接口和RMI機制進行通信。

二、Servlets架構

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

技術分享

三、Servlets任務

Servlet執行以下主要任務:

  • 讀取由客戶端(瀏覽器)發送的顯式數據。這包括網頁上的HTML表單,或者也可以是來自applet或自定義的HTTP客戶端程序的表單。

  • 讀取由客戶端(瀏覽器)發送的隱式HTTP請求數據。這包括Cookies、媒體類型和瀏覽器能理解的壓縮格式等等。

  • 處理數據並生成結果。這個過程可能需要訪問數據庫,執行RMI或CORBA調用,調用Web服務,或者直接計算響應。

  • 發送顯式數據(即文檔)到客戶端(瀏覽器)。該文檔可以以多種多樣的格式被發送,包括文本文件(HTML或XML)、二進制文件(GIF圖像)、Excel等。

  • 發送隱式的HTTP響應到客戶端(瀏覽器)。這包括告訴瀏覽器或其他客戶端被返回的文檔類型(例如HTML),設置Cookies和緩存參數,以及其他類似的任務。

四、Servlets包

Java Servlet是運行在Web服務器上的Java類,在Web服務器上有一個支持Java Servlet規範的解釋器。

Servlet可以使用javax.servlet和javax.servlet.http包來創建。它們是Java企業版的一個標準部分,也是支持大型開發項目的Java類庫的擴展版。

這些類實現了Java Servlet和JSP規範。教程使用的版本分別是Java Servlet 2.5和JSP 2.5。

就像任何其他Java類一樣,Java Servlet可以創建和編譯。在安裝Servlet包,並將它們添加到電腦的Classpath中之後,可以使用JDK的Java編譯器或其他任何當前編譯器來編譯Servlet(POM和Eclipse項目忽略這步)。

Servlet概述