對Servlet的理解和認識

首先什麼是Servlet:java

      Servlet本質就是一個繼承了HttpServlet的一個類文件,功能是在容器(服務器)根據客戶端不一樣請求給予相應的響應服務.web

      Servlet的運行環境是Tomcat編程

Servlet提供服務的過程原理(Servlet生命週期):服務器

      生命全過程: 觸發: URL請求觸發多線程

                       加載: ClassLoader 加載相關須要用到的類 app

                       實例化: init()傳遞配置參數,爲服務作準備webapp

                       初始化: 調用構造方法,建立servlet類的對象 線程

                       服務: doGet()  doPost() servlet()方法,提供服務xml

                       退出服務: destroy()死亡/銷燬消除內存中的無用數據對象

            從服務器開機開始,若是沒有請求觸發的話,就不會有相應的servlet對象

            建立之後到結束,一直都只有一個servlet對象,而後以多線程的形式執行,多個請求到同一個servlet類

        
      API中的過程: init()//只執行一次, 第一次初始化的時候 public void init(ServletConfig config) throws ServletException

                         service() public void service(ServletRequest req, ServletResponse res) throws ServletException, java.io.IOException

                         destroy()//webapp 退出的時候 public void destroy()

    如下爲Servlet生命週期圖:

  

  Servlet 編程接口 :

           GenericServlet是全部Servlet的鼻祖

           用於HTTP的Servlet編程都經過繼承 javax.servlet.http.HttpServlet 實現

           請求處理方法(應對Http協議請求):一、doGet        響應Get請求,經常使用

                                                       二、doPost        響應Post請求,經常使用

           實例的個數: 在非分佈的狀況下,一般一個Servlet在服務器中有一個實例

 Servlet的多線程機制 :

           Servlet體系結構是創建在Java多線程機制之上的,它的生命週期是由Web容器負責的。
           當客戶端第一次請求某個Servlet時,Servlet 容器將會根據web.xml配置文件實例化這個Servlet類。當有新的客戶端請求該Servlet時,通常不會再實例化該Servlet類,也就是有 多個線程在使用這個實例。
           Servlet容器會自動使用線程池等技術來支持系統的運行
          

 

注:不全面,只是我的記錄.

相關文章
相關標籤/搜索