中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

過濾器是什么

發布時間:2020-07-30 10:51:37 來源:億速云 閱讀:154 作者:Leah 欄目:編程語言

過濾器是什么?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

過濾器是一個程序,它先于與之相關的servlet或JSP頁面運行在服務器上。過濾器可附加到一個或多個servlet或JSP頁面上,并且可以檢查進入這些資源的請求信息。

在這之后,過濾器可以作如下的選擇:

①以常規的方式調用資源(即,調用servlet或JSP頁面)。

②利用修改過的請求信息調用資源。

③調用資源,但在發送響應到客戶機前對其進行修改。

④阻止該資源調用,代之以轉到其他的資源,返回一個特定的狀態代碼或生成替換輸出。

過濾器的工作原理

在Servlet作為過濾器使用時,它可以對客戶的請求進行處理。處理完成后,它會交給下一個過濾器處理,這樣,客戶的請求在過濾鏈里逐個處理,直到請求發送到目標為止。例如,某網站里有提交“修改的注冊信息”的網頁,當用戶填寫完修改信息并提交后,服務器在進行處理時需要做兩項工作:判斷客戶端的會話是否有效;對提交的數據進行統一編碼。這兩項工作可以在由兩個過濾器組成的過濾鏈里進行處理。當過濾器處理成功后,把提交的數據發送到最終目標;如果過濾器處理不成功,將把視圖派發到指定的錯誤頁面。

過濾器的生命周期

public void init(FilterConfig filterConfig) throws ServletException;//初始化

和我們編寫的Servlet程序一樣,Filter的創建和銷毀由WEB服務器負責。 web 應用程序啟動時,web 服務器將創建Filter 的實例對象,并調用其init方法,讀取web.xml配置,完成對象的初始化功能,從而為后續的用戶請求作好攔截的準備工作(filter對象只會創建一次,init方法也只會執行一次)。開發人員通過init方法的參數,可獲得代表當前filter配置信息的FilterConfig對象。

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException;//攔截請求

這個方法完成實際的過濾操作。當客戶請求訪問與過濾器關聯的URL的時候,Servlet過濾器將先執行doFilter方法。FilterChain參數用于訪問后續過濾器。

public void destroy();//銷毀

Filter對象創建后會駐留在內存,當web應用移除或服務器停止時才銷毀。在Web容器卸載 Filter 對象之前被調用。該方法在Filter的生命周期中僅執行一次。在這個方法中,可以釋放過濾器使用的資源。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

什邡市| 拉孜县| 蚌埠市| 磴口县| 瑞金市| 巴彦淖尔市| 治县。| 昆山市| 邯郸县| 凤庆县| 莒南县| 彰化县| 古蔺县| 阿拉尔市| 海丰县| 沙雅县| 连州市| 峨山| 宜昌市| 昂仁县| 张北县| 靖安县| 蒲江县| 年辖:市辖区| 永宁县| 安义县| 成武县| 武夷山市| 安仁县| 宜春市| 恩施市| 乐山市| 江门市| 奉新县| 固阳县| 新疆| 塔河县| 定兴县| 神木县| 监利县| 桓台县|