大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Servlet教程

Java Servlet Filter過濾器概述

Filter是Servlet的過濾器,是Servlet 2.3規范中新增加的一個功能,主要用于完成一些通用的操作,如編碼的過濾、判斷用戶的登錄狀態等。

在現實生活中,人們可以使用污水凈化設備對水源進行過濾凈化。同樣,在程序中人們也可以使用 Filter 對請求和響應信息進行過濾。

Filter 被稱為過濾器,其主要作用是對 Servlet 容器調用 Servlet 的過程進行攔截,從而在 Servlet 進行響應處理的前后實現一些特殊功能。Filter 在 Web 應用中的攔截過程如圖 1 所示。

圖 1 Filter攔截過程

在圖 1 中,當用戶通過瀏覽器訪問服務器中的目標資源時,首先會被 Filter 攔截,在 Filter 中進行預處理操作,然后再將請求轉發給目標資源。當服務器接收到這個請求后會對其進行響應,在服務器處理響應的過程中,也需要將響應結果經過濾器處理后,才發送給客戶端。

本質上,Filter 過濾器就是一個實現了 javax.servlet.Filter 接口的類,在 javax.servlet.Filter 接口中定義了三個方法,如表 1 所示。

表 1 Filter 接口中的方法

方法聲明

功能描述

init(FilterConfig filterConfig)

方法用于初始化過濾器,開發人員可以在 init() 方法中完成與構造方法類似的初始化功能,如果初始化代碼中要使用到 FillerConfig 對象,那么,這些初始化代碼就只能在 Filler 的 init() 方法中編寫,而不能在構造方法中編寫

doFilter(ServletRequest request,SeivletResponse response, FilterChain chain)

doFilter()方法有多個參數,其中,參數 request 和 response 為 Web 服務器或 Filter 鏈中的上一個 Filter 傳遞過來的請求和響應對象;

參數 chain 代表當前 Filter 鏈的對象,只有在當前 Filter 對象中的 doFilter() 方法內部需要調用 FilterChain 對象的 doFilter() 方法,才能把請求交付給 Filter 鏈中的下一個 Filter 或者目標程序處理

destroy()

destroy()方法在 Web 服務器卸載 Filter 對象之前被調用,該方法用于釋放被 Filter 對象打開的資源,例如關閉數據庫和 I/O 流

表 1 中的三個方法都是可以表現 Filter 生命周期的方法,其中 init() 方法在 Web 應用程序加載時會被調用,destroy() 方法在 Web 應用程序卸載(或關閉)時被調用,這兩個方法都只會被調用一次,而 doFilter() 方法會被調用多次(只要客戶端有請求時就會被調用),Filter 所有的工作集中在 doFilter() 方法中。

全部教程
主站蜘蛛池模板: 国产日日干 | 国产在线精品观看 | 国产福利精品视频 | 久久99精品这里精品3 | 夜夜操夜夜 | 国产三级黄色录像 | 国产精品免费大片 | 欧美成人一级毛片 | 欧美伊人 | 日韩精品成人免费观看 | 日日日日干| 国产第一区二区三区在线观看 | 日韩精品特黄毛片免费看 | 999精品免费视频 | 私人影院在线免费观看 | 米奇久久| 伊在人亚洲香蕉精品播放 | 国产真实乱子伦精品视 | 久久99热不卡精品免费观看 | 中国一级毛片免费观看 | 国产亚洲欧美一区二区三区 | 久久精品国产线看观看亚洲 | 国产精品每日更新 | 欧美视频在线视频 | 综合久久久久久 | 久久精品人 | 色噜噜中文网 | 国产小视频在线观看免费 | 少妇美女极品美軳人人体 | 国产精品久久新婚兰兰 | 91精品论坛 | jiucao视频在线观看 | 久久午夜激情 | 永久免费观看黄网站 | 2020国产精品视频 | 亚洲欧洲一区二区三区在线 | 国产精品亚洲第一区二区三区 | 亚洲午夜网 | 欧美人成毛片在线播放 | 日日拍夜夜操 | 伊人网狠狠干 |