1、對於Tomcat來說,它會將客戶端傳來的參數放在一個Hashtable中,該Hashtable的定義是:
2、某些Servlet在web.xml文件中只有<servlet>元素而沒有<servlet-mapping>元素,這樣我們就無法通過url地址的方式訪問這個Servlet了,這種Servlet通常會在<servlet>元素中配置一個<load-on-startup>子元素,讓容器在啓動的時候自動加載該Servlet,並且調用其init方法完成一些全局性的初始化工作。
3、Servlet的多線程同步問題:Servlet本身是單實例的,這樣當有多個用戶訪問某個Servlet時,會訪問唯一的Servlet實例中的成員變量,如果對成員變量進行寫入操作,那就會導致Servlet的多線程問題,即數據不一致。
4、解決Servlet同步問題的最好方案:去除實例變量,使用局部變量。
5、Session的運行機制
6、Servlet過濾器
1)Servlet過濾器是在Java Servlet規範2.3中定義的,它能夠對Servlet容器的請求和響應對象進行檢查和修改。
2)Servlet過濾器本身並不生成請求和響應對象,它只提供過濾作用。
3)Servlet過濾器能夠在Servlet被調用之前檢查Request對象,修改Request Header和Request內容;
4)在Servlet被調用之後檢查Response對象,修改Response Header和Response內容。Servlet過濾器負責過濾的Web組件可以是Servlet、JSP或HTML文件。
7、Servlet過濾器的過濾過程
8、Filter
9、過濾器的鏈式請求處理過程(FilterChain)