什麼是容器
在Tomcat中用Container接口表示容器 , 其作用是處理接收到的客戶端請求並返回相應的結果。
如圖,Container有四個子接口:
- Engine : 整個Tomcat的Servlet引擎 , 對應 Server.xml 的 Engine標籤
- Host :表示一個虛擬主機,可以包含多個context , Host標籤
- Context : 即Web應用,可以包含一個或多個Wrapper , Context標籤
- Wrapper : 表示一個獨立的Servlet實現類
部署Tomcat可以只需要最底層的容器Wrapper即可,也可以包含所有類型的容器
Pipeline和Valve
和Servlet的Filter類似 , 就是一系列方法的執行鏈 。
一個Pipeline和Container綁定,執行鏈由 Valve 數組順序執行。
Valve對應Server.xml 裏面的 Valve標籤