java servlet過濾器應用場景
阿新 • • 發佈:2019-02-02
1、統一POST請求中文字元編碼的過濾器
如何 實現:
將每個Servlet共有的程式碼提取出來。
2、禁止瀏覽器快取所有動態頁面的過濾器
如何 實現:
response.setDateHeader("Expires",-1);
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
並不是所有的瀏覽器都能完全支援上面的三個響應頭,因此最好是同時使用上面的三個響應頭。
Expires資料頭:值為GMT時間值,為-1指瀏覽器不要快取頁面
Cache-Control響應頭有兩個常用值:
no-cache指瀏覽器不要快取當前頁面。
max-age:xxx指瀏覽器快取頁面xxx秒。
3、控制瀏覽器快取頁面中的靜態資源的過濾器
如何 實現:
有些動態頁面中引用了一些圖片或css檔案以修飾頁面效果,這些圖片和css檔案經常是不變化的,
所以為減輕伺服器的壓力,可以使用filter控制瀏覽器快取這些檔案,以提升伺服器的效能。
4、使用Filter實現URL級別的許可權認證
如何 實現:
在實際開發中我們經常把一些執行敏感操作的servlet對映到一些特殊目錄中,
並用filter把這些特殊目錄保護起來,限制只能擁有相應訪問許可權的使用者才能訪問這些目錄下的資源。
從而在我們系統中實現一種URL級別的許可權功能。