Tomcat學習筆記

基本概念:

tomcat是一個輕量級web應用服務器,servlet的容器,底層是Socket的一個程序

目的:

學過html,css之後,我們會知道自己寫的頁面只能自己訪問,別人不能遠程訪問,Tomcat就是提供能夠讓別人訪問自己寫的頁面的一個程序

Tomcat學習筆記

適用場景:

中小型系統和併發訪問用戶不是很多的場合

目錄結構:

Tomcat學習筆記

運行流程:

  • 圖解簡易版:
    Tomcat學習筆記

  • 具體版:
    1.通過腳本startup,調用java命令,參數時tomcat自己的main主函數
    2.在main中處理邏輯,包括:解析webapps下所有的項目(綁定項目和項目url)
(1)通過web.xml找到servlet配置信息,通過反射初始化servlet(有了new出來的servlet對象-->指項目中實現HServlet的相關接口的類對象
         (a)檢查web.xml中是否有metadata-complete=‘true’,默認是false 
         (b)如果=false,還要進一步處理:target/artifactId-version/WEB-INF/calsses 中的所有類搜索servlet相關注解
         (c)通過反射實例化這些servlet相關的
(2)調用 servlet 的 init() 進行初始化操作(ps:servlet生命週期中只初始化一次)
(3)綁定對應項目的servlet和url(ps:url會在項目中的web.xml中設置)

3.接收http請求,就可以根據請求url找到對應的servlet

(1)請求url:http://ip:port/項目名/服務路徑
(2)tomcat接收請求,根據項目名找到項目,
(3)根據服務路徑找到servlet(根據之前建立的映射關係)
(4)調用servlet.service() 處理請求 (ps:tomcat是基於線程池處理多任務的方式,因此每次請求都要經過這個步驟:新建任務處理請求,不一定是新建線程,是否新建線程要根據線程池內部的上下文來決定)

本文參考資料

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章