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

Servlet教程

Servlet中FilterConfig接口及其使用方法

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

表 1 FilterConfig 接口中的方法

方法聲明

功能描述

String getFilterName()

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

String getInitParameter(String name)

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

Enumeration getInitParameterNames()

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

ServletContext getServletContext()

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

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

1、創(chuàng)建過濾器

在 filterDemo01 項(xiàng)目的 com.mengma.filter 包中創(chuàng)建過濾器 MyFilter03,使用該過濾器獲取 web.xml 中設(shè)置的參數(shù),如下所示。

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 {
        // 輸出參數(shù)信息
        characterEncoding = fc.getInitParameter("Encoding");
        System.out.println("encoding初始化參數(shù)的值為:" + 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、運(yùn)行項(xiàng)目并查看結(jié)果

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

圖 1 控制臺窗口

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

全部教程
主站蜘蛛池模板: 九九综合 | 成人不卡视频 | 亚洲黑人巨大videos0 | 日韩欧美第一区二区三区 | 欧美日韩高清观看一区二区 | 色婷婷久| 国产99视频精品免视看7 | 狠狠躁日日躁人人爽 | 国产高清在线精品一区二区 | 国产爱久久久精品 | 精品一区二区三区在线成人 | 精品久久看 | 久久香蕉国产线看观看式 | 亚洲伦理网站 | 久久精品视频在线 | 日日夜夜骑 | 日韩精品一区二区三区免费视频 | 伊人久久影院 | 一区二区三区中文字幕 | 亚洲激情网 | 特级毛片免费观看视频 | 久久久国产精品免费视频 | 亚洲国产精品婷婷久久久久 | 一区精品在线 | 韩国一级特黄毛片大 | 久操视频在线观看免费 | 国内精品久久久久久久久 | 成人激情开心网 | 日本亚洲视频 | 一本色道久久爱88a 一本色道久久爱88av俺来也 | 亚洲欧美日韩中文字幕在线一区 | 夜夜操操| 久久9999国产精品免费 | 欧美亚洲网 | 亚洲国产高清一区二区三区 | 你懂得国产 | 国产在线成人一区二区 | 天天躁日日躁狠狠躁黑人躁 | 亚洲第一综合网站 | aaa毛片视频免费观看 | 久久99国产亚洲高清 |