Servlet基礎2

Servlet編寫過濾器

Servlet 過濾器是可用于 Servlet 編程的 Java 類,有以下目的:
1.在客戶端的請求訪問后端資源之前,攔截這些請求。
2.在服務器的響應發送回客戶端之前,處理這些響應。

根據規范建議的各種類型的過濾器:
1.身份驗證過濾器(Authentication Filters)。
2.數據壓縮過濾器(Data compression Filters)。
3.加密過濾器(Encryption Filters)。
4.觸發資源訪問事件過濾器。
5.圖像轉換過濾器(Image Conversion Filters)。
6.日志記錄和審核過濾器(Logging and Auditing Filters)。
7.MIME-TYPE 鏈過濾器(MIME-TYPE Chain Filters)。
8.標記化過濾器(Tokenizing Filters)。
9.XSL/T 過濾器(XSL/T Filters),轉換 XML 內容。

過濾器被部署在部署描述符文件 web.xml 中,然后映射到您的應用程序的部署描述符中的 Servlet 名稱或 URL 模式。

當 Web 容器啟動 Web 應用程序時,它會為您在部署描述符中聲明的每一個過濾器創建一個實例。該過濾器執行的順序是按它們在部署描述符中聲明的順序。

  • Servlet過濾器方法
    過濾器是一個實現了 javax.servlet.Filter 接口的 Java 類。javax.servlet.Filter 接口定義了三個方法:
方法 描述
public void doFilter(SerlvetRequest,SrevletResponse,FilterChain) 該方法在每次一個請求/響應對因客戶端在鏈的末端請求資源而通過鏈傳遞時由容器調用。
public void init(FilterConfig filterConfig) 該方法由 Web 容器調用,指示一個過濾器被放入服務。
public void destroy() 該方法由 Web 容器調用,指示一個過濾器被取出服務。

Servlet Cookies處理

Cookies 是存儲在客戶端計算機上的文本文件,并保留了各種跟蹤信息。Java Servlet 顯然支持 HTTP Cookies。

識別返回用戶包括三個步驟:
1.服務器腳本向瀏覽器發送一組 Cookies。例如:姓名、年齡或識別號碼等。
2.瀏覽器將這些信息存儲在本地計算機上,以備將來使用。
3.當下一次瀏覽器向 Web 服務器發送任何請求時,瀏覽器會把這些 Cookies 信息發送到服務器,服務器將使用這些信息來識別用戶。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,947評論 18 139
  • 這部分主要是與Java Web和Web Service相關的面試題。 96、闡述Servlet和CGI的區別? 答...
    雜貨鋪老板閱讀 1,425評論 0 10
  • Spring Boot 參考指南 介紹 轉載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,958評論 6 342
  • [1]簡介 [2] Servlet的生命周期 [3] 相關接口 [4] GenericServlet [5] Ht...
    jiangmo閱讀 532評論 0 0
  • 過濾器 過濾器可以動態的攔截請求和相應,以變換或使用包含在請求或響應中的信息。 過濾器是可用于 Servlet 編...
    Lisy_閱讀 609評論 0 0