国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP-12-使用過濾器和監聽器

2019-11-15 00:11:17
字體:
來源:轉載
供稿:網友
jsp-12-使用過濾器和監聽器1 什么是過濾器及其工作方式

向Web應用程序的請求和響應添加功能的Web組建

過濾器可以統一的集中處理請求和響應

15.2 過濾器的實現

新建 filter ,注意此時是在 src中建立的(同class的創建位置一樣)。

解決亂碼問題:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

request.setCharacterEncoding("utf-8");

chain.doFilter(request, response);

response.setCharacterEncoding("utf-8");

}

Web.xml

<filter>

<display-name>filter</display-name>

<filter-name>filter</filter-name>

<filter-class>com.db.news.web.fileter.filter</filter-class>

</filter>

<filter-mapping>

<filter-name>filter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

具體實現步驟:

  1. 建立實現 Filter 接口的類 javax.servlet.Filter
  2. 實現過濾行為/調用下一個過濾器或web資源

  1. 在web.xml中配置過濾器

匹配順序:

1) 完全匹配 : /index.jsp

2) 目錄擴展匹配: /admin/*

3) 擴展名匹配: *.do

4) 全部匹配: /*

初始化參數和過濾器鏈

配置過濾器的初始化參數

讀取過濾器的初始化參數

多個過濾器會形成過濾器鏈,它的訪問順序根據 <filter-mapping> 中的配置從上到下依次匹配。

15.3 過濾器的生命周期

1. 實例化: 開辟內存空間,只執行一次

2. 初始化: init() 只執行一次

3. 過濾: doFilter() 用戶請求頁面進行匹配

4. 消耗: destroy() 只執行一次

15.4 使用過濾器的場合

對請求,響應進行統一處理

對請求進行日志記錄和審核

對數據進行屏蔽和替換

對數據進行加密和解密

15.5 監聽器

在訪問資源的過程中,發生某些特定過程時進行相應的操作。

例:統計在線的人數

  1. 創建類實現監聽器接口

Javax.servlet.http.HttpsessionBindingListener;

  1. 在valueBound和valueUnbound方法中實現用戶數量的統計

valueBound(HttpSessionBindingEvent arg0){

//用戶對象存入session時自動調用

//用戶數量添加1

}

valueUnbound(HttpSessionBindEvent arg0){

//用戶對象從session中刪除時自動調用

//用戶數量減1

}

  1. 在web.xml中配置監聽器(此項默認生成)

<listener>

<listener-class>監聽器完全限定名</listener-class>

<listener>


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鹤庆县| 棋牌| 敖汉旗| 宜丰县| 瑞丽市| 封丘县| 思南县| 同仁县| 聊城市| 甘谷县| 平乐县| 榆社县| 安丘市| 醴陵市| 浪卡子县| 阿拉善盟| 沾益县| 儋州市| 郴州市| 南平市| 四平市| 太谷县| 南丹县| 长宁区| 铜川市| 昌邑市| 昭通市| 孝义市| 福建省| 雷波县| 观塘区| 虹口区| 宜良县| 类乌齐县| 西安市| 资溪县| 琼结县| 大庆市| 綦江县| 布尔津县| 阿克陶县|