1.談談你對Servlet過濾器的理解web
過濾器是Servlet2.3規範中定義的一種小型的、可插入的Web組件。用來攔截Servlet容器的請求和響應過程,以便查看、提取客戶端和服務器之間正在交換的數據。過濾器一般是封裝了一些功能的Web組件,這些功能很重要,但對於處理客戶端請求或發送響應來講不是決定性的。典型的應用包括記錄請求和響應的數據、管理會話屬性等。服務器
2.簡述什麼是監聽器xml
監聽web應用,監聽許多信息的初始化,銷燬,增長,修改,刪除值等Servlet監聽器用於監聽一些重要事件的發生,監聽器對象能夠在事情發生前、發生後能夠作一些必要的處理。對象
● Listener是Servlet的監聽器。接口
● 能夠監聽客戶端的請求、服務端的操做等。生命週期
● 經過監聽器,能夠自動激發一些操做,如監聽在線用戶數量,當增長一個HttpSession時,給在線人數加1。事件
● 編寫監聽器須要實現相應的接口。資源
● 編寫完成後在web.xml文件中配置一下,就能夠起做用了。io
● 能夠在不修改現有系統基礎上,增長web應用程序生命週期事件的跟蹤。容器
3.過濾器的工做原理?
當客戶端發出Web資源的請求時,Web服務器根據應用程序配置文件設置的過濾規則進行檢查,若客戶請求知足過濾規則,則對客戶請求/響應進行攔截,對請求頭和請求數據進行檢查或改動,並依次經過過濾器鏈,最後把請求/響應交給請求的Web資源處理。請求信息在過濾器鏈中能夠被修改,也能夠根據條件讓請求不發往資源處理器,並直接向客戶機發回一個響應。當資源處理器完成了對資源的處理後,響應信息將逐級逆向返回。一樣在這個過程當中,用戶能夠修改響應信息,從而完成必定的任務。