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

Servlet教程

Servlet中FilterConfig接口及其使用方法

FilterConfig 是 Servlet API 提供的一個用于獲取 Filter 程序在 web.xml 文件中的配置信息的接口,該接口封裝了 Filter 程序在 web.xml 中的所有注冊信息,并且提供了一系列獲取這些配置信息的方法,具體如表 1 所示。

表 1 FilterConfig 接口中的方法

方法聲明

功能描述

String getFilterName()

getFilterName() 方法用于返回在 web.xml 文件中為 Filter 所設置的名稱,也就是返回 元素的設置值

String getInitParameter(String name)

getInitParameter(String name) 方法用于返回在 web.xml 文件中為 Filter 所設置的某個名稱的初始化參數值,如果指定名稱的初始化參數不存在,則返回 null

Enumeration getInitParameterNames()

getInitParameterNames() 方法用于返回一個 Enumeration 集合對象,該集合對象包含在 web.xml 文件中為當前 Filter 設置的所有初始化參數的名稱

ServletContext getServletContext()

getServletContext()方法用于返回 FilterConfig 對象中所包裝的 ServletContext 對象的引用

表 1 列舉了 FilterConfig 接口中的一系列方法,為了讓讀者更好地掌握這些方法,下面以 getInitParameter(String name)方法的使用為例演示 FilterConfig 接口的使用。

1、創建過濾器

在 filterDemo01 項目的 com.mengma.filter 包中創建過濾器 MyFilter03,使用該過濾器獲取 web.xml 中設置的參數,如下所示。

package com.mengma.filter;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class MyFilter03 implements Filter {
    private String characterEncoding;
    FilterConfig fc;
    public void init(FilterConfig fConfig) throws ServletException {
        // 獲取 FilterConfig 對象
        this.fc = fConfig;
    }
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        // 輸出參數信息
        characterEncoding = fc.getInitParameter("Encoding");
        System.out.println("encoding初始化參數的值為:" + characterEncoding);
        chain.doFilter(request, response);
    }
    public void destroy() {
    }
}

2、配置過濾器

在 web.xml 文件中配置過濾器信息。為了防止其他過濾器影響 MyFilter03 的攔截效果,需要先將 web.xml 文件中其他過濾器的配置信息注釋掉,然后將 MyFilter03 過濾器的映射信息配置在 MyServlet 配置信息的前面,具體代碼如下所示:

<filter>
    <filter-name>MyFilter03</filter-name>
    <filter-class>com.mengma.filter.MyFilter03</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>MyFilter03</filter-name>
    <url-pattern>/MyServlet</url-pattern>
</filter-mapping>

3、運行項目并查看結果

啟動 Tomcat 服務器,在瀏覽器的地址欄中輸入地址 http://localhost:8080/filterDemo01/MyServlet 訪問 MyServlet,控制臺窗口中顯示的結果如圖 1 所示。

圖 1 控制臺窗口

從圖 1 中可以看出,使用 Filter 成功獲取到配置文件中的初始化參數。當 Tomcat 服務器啟動時,會加載所有的 Web 應用,在加載 filterDemo01 時,MyFilter03 會被初始化調用 init() 方法,從而可以得到 FilterConfig 對象,然后在 doFilter() 方法中通過調用 FilterConfig 對象的 getInitParameter() 方法便可以獲取在 web.xml 文件中配置的某個參數信息。

全部教程
主站蜘蛛池模板: 国产高清一区二区三区视频 | 亚洲五月婷婷 | 亚洲欧美日韩综合二区三区 | 亚洲五月婷婷 | 国产欧美中文字幕 | 狠狠狠很橹影院 | 在线色资源 | 免费看久久 | 久久国产精品一区二区三区 | 99视频在线看观免费 | 久久精品视频免费观看 | 成人在线视频网站 | 国产精品自在线拍 | 露脸超嫩97后在线播放 | 香焦视频在线观看黄 | 四虎免费大片aⅴ入口 | 国产图片综合 | 色视频一区 | 四虎影| 国产成人综合亚洲欧洲色就色 | 国产蜜汁tv福利在线 | 日本在线观看不卡免费视频 | 奇米影视一区 | 四虎影视国产在线观看精品 | 免费福利在线播放 | 欧美夜色| 91精品国产爱久久久久 | 欧美亚洲国产一级毛片 | 狠狠色丁香婷婷综合视频 | 精品一区二区三区四区乱码90 | 国产精品久久久久久福利69堂 | 国产成人精品三区 | 99久久一香蕉国产线看观看 | 欧美精品国产一区二区三区 | 久久精品国语 | 在线欧美国产 | 视频在线a | 在线视频久久 | 轻轻操在线观看 | 精品久久久一二三区 | 天天天操操操 |