javaWeb之Servlet詳解,javawebservlet

來源:互聯網
上載者:User

javaWeb之Servlet詳解,javawebservlet
Servlet詳解

1.servlet簡單介紹

  servlet是javaweb三大組件之一,他與filter  ,listener  共同組成了javaweb的三大組件,Servlet(Server Applet)是Java Servlet的簡稱,解釋為運行在伺服器端的java小程式,

  作用:用來接收用戶端的請求,處理商務邏輯,響應動態內容

2.使用

  建立一個java類,實現Servlet介面,重寫抽象方法

 1 public class MyServlet implements Servlet { 2     /** 3      * Servlet初始化的時候執行 4      */ 5     @Override 6     public void init(ServletConfig config) throws ServletException { 7         // TODO Auto-generated method stub 8          9     }10     /**11      *請求來的時候執行12      */13     @Override14     public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {15         // TODO Auto-generated method stub16         17     }18     /**19      * Servlet銷毀的時候執行20      */21     @Override22     public void destroy() {23         // TODO Auto-generated method stub24         25     }26 27     @Override28     public String getServletInfo() {29         // TODO Auto-generated method stub30         return null;31     }32     @Override33     public ServletConfig getServletConfig() {34         // TODO Auto-generated method stub35         return null;36     }37 38 }

3.Servlet的生命週期(Servlet對象是單例的)

  建立:預設情況下,當請求來的時候,伺服器會檢查該類的對象有沒有被建立,如果沒有建立,伺服器會反射建立該類的對象,並且調用init方法完成初始化的操作,然後調用serivce 方法完成相應的商務邏輯

  服務:請求來一次就服務一次

  銷毀:當伺服器正常關閉或者項目卸載的時候會銷毀該Serlvet對象

 1 /** 2      * Servlet初始化的時候執行 3      * 執行時機:預設情況下,當你去請求伺服器的時候,伺服器會檢查有沒有該Servlet對象, 4      *             如果沒有,就會反射建立該類對象,並執行init方法完成初始化操作,緊接著調用 5      *             service方法完成服務 6      * 執行次數:1次 7      */ 8     @Override 9     public void init(ServletConfig config) throws ServletException {10         // TODO Auto-generated method stub11         12     }13     /**14      *服務:15      *執行時機:請求一次執行一次16      *執行次數:多次17      *18      */19     @Override20     public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {21         // TODO Auto-generated method stub22         23     }24     /**25      *銷毀26      *執行時機:伺服器關閉或者是項目卸載的時候,會調用該方法27      *執行次數:1次28      */29     @Override30     public void destroy() {31         // TODO Auto-generated method stub32         33     }

4.Servlet在web.xml中的配置詳解

 

圖解設定檔執行流程

 

 

url-pattern的寫法
  1.精確匹配寫法 必須/打頭 後面自訂 /aa/bb /aa/ccc/dddd 
  2.目錄匹配寫法 必須/打頭 中間自訂 以/*結尾 /aa/* /aaa/dd/*
  3.尾碼名匹配寫法 必須*.打頭 *.jsp *.action *.do

load-on-startup配置項
  修改servlet的預設初始化時機 servlet將會在伺服器啟動的完成載入

  <load-on-startup>正整數</load-on-startup>
  正整數:如果值越小優先順序越高

defaultservlet:
  路徑 /
  匹配上所有的資源 但是優先順序最低

  你不管的他管
  你管不了的它管

 

 5.Servlet運行流程

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.