JavaEE複習二

來源:互聯網
上載者:User

標籤:XML   輸出   優先順序   init   分享   指定   class   包含   線程   

 Servlet應用開發介面:

javax.servlet.Servlet:

  • init()方法:調用在構造方法之後,在service方法之前;
  • service()方法:調用此方法允許Servlet響應請求,在Servlet成功初始化之前無法調用;
  • destroy()方法:當一個Servlet被從服務中去除時,Servlet會調用此方法。當這個對象service()方法所有的線程未全部退出或者被容器認為發生逾時操作時,此方法不會調用
  • getServletConfig()方法:get 一個 ServletConfig,
  • getServletInfo()方法:允許Servlet向主機的Servlet運行提供有關資訊

Servlet生命週期:

  1. 用戶端發送請求
  2. Servlet容器解析請求
  3. 建立Servlet執行個體
  4. 調用init方法
  5. 調用service方法
  6. 輸出響應資訊
  7. 返迴響應
  8. 調用destory方法

第一次訪問Servlet時:

  會調用servlet的構造方法,調用init()在一個Servlet的生命週期中只執行一次

在伺服器啟動載入網站是:

  會調用service方法

具體什麼時候載入需要通過web.xml設定檔中對應servlet設定項<load-on-startup>節點進行設定:

1 load-on-startup標記容器是否在啟動的時候執行個體化並調用其init()方法的優先順序。2 它的值表示servlet應該被載入的順序3 當值為0或者大於0時,表示容器在應用啟動時就載入並初始化這個servlet;4 如果值小於0或未指定時,則表示只有在第一次請求的容器才在該servlet調用初始化函數5 正值越小,servlet的優先順序越高,應用啟動時就越先載入。6 值相同時,容器就會自己選擇順序來載入。
load-on-startup

Servlet在什麼時候被銷毀:

  伺服器關閉;更新、停止web模組的時候;由Servlet容器根據情況(destory方法)

 destory()方法:

  在Servlet執行個體被銷毀之前調用,在一個Servlet的生命週期中只執行一次

Servlet生命週期可以分為四個階段(總結):

  1.   載入和執行個體化:調用構造方法,由servlet容器完成
  2.   初始化:調用init方法
  3.       處理客戶請求:service方法(doGet、doPost)
  4.       銷毀:銷毀之前調用destroy方法

ServletConfig包含web程式部署描述符中定義的參數,servletConfig是由Servlet容器執行個體化

每個Web應用啟動後,Servlet容器都會建立唯一的一個ServletContext對象,該對象包含整個web程式的資訊

Servlet是多線程應用

JavaEE複習二

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.