-
Filter的三個方法:
過濾器可以改變用戶請求的web資源,也就是說可以改變用戶請求的路勁
過濾器不能直接返回數(shù)據(jù),不能直接處理用戶請求,它不是一個標準的servlet
/*中(*)代表任意值
紅色區(qū)域代表過濾器類的配置
<filter>...</filter>
綠色區(qū)域配置過濾器URL相關映射配置
<filter-mapping>...</filter-mapping>
URL是需要過濾的路徑
@JAVA過濾機制——第一個過濾器案例
1、創(chuàng)建一個過濾器類 ,繼承自servlet下的Filter
2、重寫三個方法init() doFilter() destroy()方法
? (1)init()初始化:這個方法可以讀取web.xml文件中的過濾器初始化參數(shù)。通過參數(shù)FilterConfig arg0可以獲取更多參數(shù)
? (2)doFIlter()核心:完成實際的過濾操作。當用戶請求訪問與過濾器【關聯(lián)的URL】時,Web容器將先調(diào)用過濾器的doFilter方法,F(xiàn)ilterChain arg2參數(shù)可以調(diào)用chain.doFilter方法,將請求傳給下一個過濾器(或目標資源),或利用轉(zhuǎn)發(fā),重定向?qū)⒄埱筠D(zhuǎn)發(fā)給其他資源。
?? (3)web容器在消耗過濾器前調(diào)用該方法,用于釋放過濾器占用的資源。(大多數(shù)情況用不到)
3、過濾器的配置如圖:
(1)一般配置一個<filter>,然后用多個<filter-mapping>與之關聯(lián)
在過濾器對象的doFilter()方法中,業(yè)務邏輯處理完成之后,需要通過FilterChain對象的doFilter()方法將請求傳遞到下一個過濾器或者目標資源,否則將出現(xiàn)錯誤。
查看全部 -
過濾器在web程序啟動時就已經(jīng)從web服務器加載
用戶發(fā)送請求后,先通過過濾器,符合規(guī)則再發(fā)送給web資源
每次用戶發(fā)送請求,都會調(diào)用doFilter()
查看全部 -
過濾器的概念:
查看全部 -
過濾器應用場景
查看全部 -
web,xml配置
查看全部 -
過濾器執(zhí)行順序
查看全部 -
doFilter方法傳遞給下一個過濾器或目標資源,或者可以轉(zhuǎn)發(fā)或者重定向
查看全部 -
過濾器web.xml的配置
查看全部 -
在過濾器中指定編碼格式查看全部
-
可以在web.xml中配置初始參數(shù)查看全部
-
判斷session中是否有username,沒有不予放行且重定向到登陸界面查看全部
-
過濾器常用場景查看全部
-
異步servlet查看全部
-
可以用@webfilter注解進行filter配置查看全部
-
可以在web.xml中配置error-page標簽以指示錯誤頁面查看全部
舉報