Filter過濾器小知識

2021-10-03 16:48:55 字數 1645 閱讀 2410

1、簡介

伺服器端程式,負責攔截請求,在進行主程式之前對請求進行相關處理

2、常見應用

session與cookie登陸、中文亂碼問題、響應資料壓縮等

3、配置攔截路徑

(1)web.xml

<

!-- 配置tomcat過濾器實現類 --

>

<

!-- filter-name : 唯一,命名過濾器 --

>

filter<

/filter-name>

<

!-- filter-

class

: 過濾器實現類 --

>

class

>com.kunkun.filter1.hellofilter<

/filter-

class

>

<

/filter>

<

!-- 過濾器使用路徑 --

>

filter<

/filter-name>

<

!-- 攔截路徑 --

>

/*

(2)註解方式

@webfilter

("/*"

)//攔截路徑

public

class

hellofilter

implements

filter

@override

public

void

dofilter

(servletrequest servletrequest, servletresponse servletresponse, filterchain filterchain)

throws ioexception, servletexception

@override

public

void

destroy()

}

4、生命週期

(1)init : 引數 filterconfig,獲取filter註冊名稱及初始化引數,執行一次

(2)dofilter : 攔截請求資源,執行多次

(3)destroy : 伺服器關閉後,filter物件被銷毀

5、攔截路徑(url-pattern)

(1)全路徑匹配 以 / 開始

(2)以目錄匹配 以 / 開始 以 * 結束

(3)以字尾名匹配 以 * 開始 以字尾名結束

request:預設值,瀏覽器直接請求資源

forward:攔截**訪問資源

include:包含訪問資源

error:錯誤跳轉全域性錯誤頁面

async:非同步訪問資源

6、過濾鏈

(1) 註解配置:按照類名的字串比較規則比較,值小的先執行

如: a***x 和 b***x,a***x就先執行
(2) web.xml配置: 上下**順序

Filter過濾器介紹

定義乙個類讓其實現filter介面 在dofilter 方法中加入相應的攔截 加入了相應的攔截 之後需要使用chain.dofilter req,resp 讓請求繼續走 在web.xml中進行配置 testfilterfilter name org.itat.filter.myfilterfilte...

過濾器 Filter 模式

過濾器模式也是一種結構型模式,它允許我們使用不同的規則過濾某一組物件。首先建立乙個實體類person,分別擁有年齡 性別 位址三個屬性,用於相親,嘿嘿。public class person public void setage int age public string get public vo...

Filter 過濾器(筆記)

web中的過濾器 當訪問伺服器的資源時,過濾器可以將請求攔截下來,完成一些特殊的操作。過濾器的作用 一般用於完成通用的操作。如 登入驗證 統一編碼處理 敏感字元的過濾 編寫過濾器的步驟 定義乙個類,實現介面filter 複寫方法 配置攔截路徑 配置攔截路徑的兩種方法 web.xml註解 基本 web...