標籤:頁面 優先順序 步驟 http 預設 基本配置 destory 時間 bubuko
Java核心編程之Servlet:
Servlet運行在服務端的Java小程式,是sun公司提供一套規範(介面),用來處理用戶端請求,響應給瀏覽器的動態資源!但Servlet的實質就是Java代碼,通過Java的API 動態向用戶端輸出內容!
Servlet規範:
① Servlet技術!
② Filter技術(過濾器)!
③ Listener技術(監聽器)!
實現步驟:
① 建立類實現Servlet介面!
② 覆蓋尚未實現的方法(init/Service/Destory)!
③ 在Web.xml進行Servlet的配置!
init(ServletConfig config)
執行時間:Servlet對象建立的時候執行(訪問網址)!
ServletConfig : 代表的是該Servlet對象的配置資訊!
Service(ServletRequest request,ServletResponse response)
執行時間:每次請求都會執行!
ServletRequest:請求對象,內部封裝Http的請求資訊!
ServletResponse:響應對象,內部封裝響應資訊!
destroy()
執行時間:Servlet銷毀時執行(關閉TomCat伺服器時)!
Servlet生命週期面試題:當伺服器開啟後,使用者第一次訪問網址時,建立Servlet對象,執行init()方法,之後每一次請求都會執行Service()方法,當伺服器關閉時執行Destory()方法,Servlet對象被銷毀!
對MyServlet進行了10次訪問,init(),destory(),service(),doGet(),doPost() 一共執行力多少次?request對象建立幾個?response建立幾個?
10次訪問,總共執行1次init()方法,1次destory()方法,10次service()方法,10個request對象和10個response對象!
自訂的Web.xml的資訊!
Url-Pattern的基本配置:
① 完全符合:訪問的資源與配置的資源完全相同才能訪問到!
② 目錄匹配: /目錄…/目錄…/*(*號代表任意檔案)
③副檔名匹配: *.副檔名(Tips:副檔名可以不用/)
//目錄匹配和副檔名匹配不要混用!
強調:Servlet對象預設在伺服器開啟後使用者第一次訪問時建立,但是可以在Web.xml中寫入:
這句話指定Servlet對象在伺服器啟動時建立,存在多個Servlet對象的情況下可以設定優先權,優先順序越高數字越小,建議從3或者5開始!
預設的Servlet:
只設定一個/構成缺醒的Servlet!
當訪問的所有資源都不匹配時,會訪問預設的Servlet,相當於一個托底的設定,避免404錯誤!
如果在瀏覽器中URL地址中,不寫任何資源,單純訪問:
localhost:8080/WEB002
TomCat核心會去自訂的Web.xml中找Welcome-File-List尋找頁面,如果沒有就去TomCat中Conf檔案夾中找Welcome-File-List,如果還沒有,則會報404錯誤!
HttpServlet類:
① init()
② doGet(HttpServletRequest request,HttpServletResponse response)
③ doPost(HttpServletRequest request,HttpServletResponse response)
④ destroy()
2018-09-03網頁訪問的基本執行流程+Servlet基本結構與運行機制