Servlet初級入門

Servlet是一種 服務器 端的Java應用 程序 ,具有獨立於平臺和協議的特性,可以生成動態的Web頁面。 它擔當客戶請求(Web瀏覽器或其他HTTP客戶程序)與服務器響應(HTTP服務器上的 數據庫 或應用程序)的中間層。 Servlet是位於Web 服務器內部的服務器端的Java應用程序,與傳統的從命令行啓動的Java應用程序不同,Servlet由Web服務器進行加載,該Web服務器必須包含支持Servlet的Java 虛擬機 。

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()方法。

servletconfig對象

• 在 Servlet 的配置文件中,可以使用一個或多個 <init-param> 標籤爲 servlet 配置一些初始化參數。

• 當 servlet 配置了初始化參數後, web 容器在創建 servlet 實例對象時, 會自動將這些初始化參數封裝到 ServletConfig 對象中,並在調用 servlet 的 init 方法時,將 ServletConfig 對象傳遞給 servlet 。進而,程序員通過 ServletConfig 對象就可以得到當前 servlet 的初始化參數信息。

ServletContext對象

• WEB容器在啓動時,它會爲每個WEB應用程序都創建一個對應的 ServletContext對象,它代表當前web應用。

• ServletConfig對象中維護了ServletContext對象的引用,開發人員 在編寫servlet時,可以通過ServletConfig.getServletContext方法 獲得ServletContext對象。 也可以使用 this.getServletContext方法

• 由於一個WEB應用中的所有Servlet共享同一個ServletContext對象, 因此Servlet對象之間可以通過ServletContext對象來實現通訊。多 個Servlet通過ServletContext對象實現數據共享。

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