Java Web 監聽器web.xml配置詳細信息


 1   <filter>
 2         <!--過濾器名稱-->
 3         <filter-name>UserFilter</filter-name>
 4         <!--過濾器類的包路徑-->
 5         <filter-class>com.filter.UserFilter</filter-class>
 6     </filter>
 7     <!--過濾器映射-->
 8     <filter-mapping>
 9         <filter-name>UserFilter</filter-name>
10         <!--指定過濾器作用的對象-->
11         <url-pattern>*.jsp</url-pattern>
12     </filter-mapping>

Filter的應用場景:

1、通過控制對chain.doFilter的方法的調用,來決定是否需要訪問目標資源。

比如,可以在用戶權限驗證等等。判斷用戶是否有訪問某些資源的權限,有權限放行,沒權限不執行chain.doFilter方法。

 

2、通過在調用chain.doFilter方法之前,做些處理來達到某些目的。

比如,解決中文亂碼的問題等等。可以在doFilter方法前,執行設置請求編碼與響應的編碼。甚至可以對request接口進行封裝裝飾來處理get請求方式的中文亂碼問題(重寫相應的request.getParameter方法)。

 

3、通過在調用chain.doFilter方法之后,做些處理來達到某些目的。

比如對整個web網站進行壓縮。在調用chain.doFilter方法之前用類A對response對象進行封裝裝飾,重寫getOutputStream和重寫getWriter方法。在類A內部中,將輸出內容緩存進ByteArrayOutputStream流中,然后在chain.doFilter方法執行后,獲取類A中ByteArrayOutputStream流緩存數據,用GZIPOutputStream流進行壓縮下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM