什麼是servlet容器

servletServlet是使用Java Servlet 應用程序設計接口(API)及相關類和方法的 Java 程序。除了 Java Servlet API,Servlet 還可以使用用以擴展和添加到 API 的 Java 類軟件包。Servlet 在啓用 Java 的 Web 服務器上或應用服務器上運行並擴展了該服務器的能力。Java servlet對於Web服務器就好像Java applet對於Web瀏覽器。Servlet裝入Web服務器並在Web服務器內執行,而applet裝入Web瀏覽器並在Web瀏覽器內執行。Java Servlet API 定義了一個servlet 和Java使能的服務器之間的一個標準接口,這使得Servlets具有跨服務器平臺的特性。 Servlet 通過創建一個框架來擴展服務器的能力,以提供在 Web 上進行請求和響應服務。當客戶機發送請求至服務器時,服務器可以將請求信息發送給 Servlet,並讓 Servlet 建立起服務器返回給客戶機的響應。 當啓動 Web 服務器或客戶機第一次請求服務時,可以自動裝入 Servlet。裝入後, Servlet 繼續運行直到其它客戶機發出請求。Servlet 的功能涉及範圍很廣。例如,Servlet 可完成如下功能: (1) 創建並返回一個包含基於客戶請求性質的動態內容的完整的 HTML頁面。 (2) 創建可嵌入到現有 HTML 頁面中的一部分 HTML 頁面(HTML 片段)。 (3) 與其它服務器資源(包括數據庫和基於 Java 的應用程序)進行通信。 (4) 用多個客戶機處理連接,接收多個客戶機的輸入,並將結果廣播到多個客戶機上。例如,Servlet 可以是多參與者的遊戲服務器。 (5) 當允許在單連接方式下傳送數據的情況下,在瀏覽器上打開服務器至applet的新連接,並將該連接保持在打開狀態。當允許客戶機和服務器簡單、高效地執行會話的情況下,applet也可以啓動客戶瀏覽器和服務器之間的連接。可以通過定製協議或標準(如 IIOP)進行通信。 (6) 對特殊的處理採用 MIME 類型過濾數據,例如圖像轉換和服務器端包括(SSI)。 (7) 將定製的處理提供給所有服務器的標準例行程序。例如,Servlet 可以修改如何認證用戶。Servlet生命週期  裝載Servlet。這項操作一般是動態執行的。然而,Server通常會提供一個管理的選項,用於在Server啓動時強制裝載和初始化特定的Servlet。   Server創建一個Servlet的實例   Server調用Servlet的init()方法   一個客戶端的請求到達Server   Server創建一個請求對象   Server創建一個響應對象   Server激活Servlet的service()方法,傳遞請求和響應對象作爲參數   service()方法獲得關於請求對象的信息,處理請求,訪問其他資源,獲得需要的信息   service()方法使用響應對象的方法,將響應傳回Server,最終到達客戶端。service()方法可能激活其它方法以處理請求,如doGet()或doPost()或程序員自己開發的新的方法   對於更多的客戶端請求,Server創建新的請求和響應對象,仍然激活此Servlet的service()方法,將這兩個對象作爲參數傳遞給它。如此重複以上的循環,但無需再次調用init()方法。一般Servlet只初始化一次 ,當Server不再需要Servlet時(一般當Server關閉時),Server調用Servlet的Destroy()方法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章