回覆列表
  • 1 # 使用者1430558932451

    什麼是servlet : servlet是一個Java編寫的程式,此程式是基於http協議的,在伺服器端(如Tomcat)執行的,是按照servlet規範編寫的一個Java類。 客戶端傳送請求至伺服器端,伺服器端將請求傳送至servlet,servlet生成響應內容並將其傳給伺服器即,我們在瀏覽器點選連結和按鈕產生的訊息不是傳送給servlet的,而是傳送給web容器(如Tomcat、jetty)的,web容器接受訊息後不知道怎麼處理,轉交給我們編寫的servlet處理,那麼web容器怎麼和servlet交流呢,於是就有了servlet介面(因為介面是定義一種規範的良好表達形式)。我們只需要編寫Java類符合servlet規範,那麼就能被web容器識別,並被容器管理。 Servlet = Service + Appletservlet的作用:處理客戶端的請求並將其結果傳送到客戶端servlet的生命週期servlet的生命週期由servlet容器來控制,分為三個階段:初始化階段:

    1.servlet容器載入servlet類,把servlet類的.class檔案中的資料讀到記憶體中。

    2.servlet容器建立一個servletConfig物件。servletConfig物件包含了servlet的初始化配置資訊。

    3.servlet容器建立一個servlet物件。

    4.servlet容器呼叫servlet物件的init方法進行初始化。執行階段:1.servlet容器接收到一個請求時,servlet容器會針對這個請求建立servletRequest和servletResponse物件。2.然後呼叫service方法。並將這兩個引數傳遞給service方法。service方法透過servletRequest物件獲得請求的資訊。並處理該請求。3.再透過servletResponse物件生成這個請求的響應結果。然後銷燬servletRequest和servletResponse物件。不管這個請求時post提交的還是get提交的,這一種這個請求都會由service方法來處理。銷燬階段:當web應用被終止時,servlet容器會先呼叫servlet物件的destroy方法,然後在銷燬servlet物件,同時也會銷燬與servlet物件相關聯的servletConfig物件。我們可以在destroy方法的實現中,釋放servlet所佔用的資源,如關閉資料庫連線,關閉檔案輸入輸出流等。servlet怎麼處理一個請求?當用戶從瀏覽器向伺服器發起一個請求,通常會包含如下資訊:http://hostname: port /contextpath/servletpath,hostname 和 port 是用來與伺服器建立 TCP 連線,而後面的 URL 才是用來選擇伺服器中那個子容器服務使用者的請求。那伺服器是如何根據這個 URL 來達到正確的 Servlet 容器中的呢?Tomcat中這件事很容易解決,因為這種對映工作有專門的一個類來完成,這個類儲存了Tomcat的container容器中所有子容器的資訊。當 Request 進入 Container 容器之前,它要訪問那個子容器這時就已經確定了。當用戶傳送一個請求到某個servlet的時候,servlet容器會建立一個servletRequest和servletResponse物件。在servletRequest物件中封裝了使用者的請求資訊,然後servlet容器把servletRequest和servletResponse物件傳遞給使用者所請求的servlet,servlet把處理好的結果解除安裝servletResponse中,然後servlet容器把響應結果傳給使用者。servlet和jsp的區別1.jsp經編譯後就是servlet。2.jsp更擅長頁面表現,servlet更擅長邏輯編輯3.jsp位於MVC設計模式的檢視層,而servlet位於控制層servlet裡的過濾器過濾器的作用1.任何系統或網站都要判斷使用者是否登入。2.網路聊天系統或論壇,功能是過濾非法文字3.統一解決編碼怎麼建立一個過濾器:1.生成一個普通的class類,實現Filter藉口(javax.servlet.Filter)2.重寫接口裡面的三個方法:init,doFilter和destroy3.然後在web.xml配置過濾器servlet中的監聽器1.對Request的監聽,對session的監聽,對application的監聽

  • 2 # 使用者3098613971747

    客戶端安裝PDF reader。

    設定Reader,先讓在中顯示IE。

    Servlet就將PDF檔案用流返回即可(Content-Type寫成application/pdf或applicatin/stream)。

  • 中秋節和大豐收的關聯?
  • 貼片積體電路如何檢查好壞?