FilterConfig 的作用

在Filter的init方法中有一个参数FilterConfig.

FilterConfig作用也是获取Filter的相关配置信息:

    1.初始化参数的获取

            String getInitparameter(String name);

            Enumeration EnumerngetInitParameterNames();

    2.Filter的名称获取

            getFilterName();

    3.ServletContext对象的获取

            getServletContext();

 

测试:创建一个DemoFilter2的类文件.

package cn.itcast.web.filter;

import java.io.IOException;
import java.util.Enumeration;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

import com.sun.net.httpserver.Filter.Chain;

//Filter入门
//1.创建一个类,实现Filter接口
//2.重写方法
//3.在web.xml文件中配置
public class DemoFilter2 implements Filter{
	public void destroy() {
	}
	
	//用来过滤的方法
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		System.out.println("DemoFilter2进行过滤操作...");
		//放行
		chain.doFilter(request, response);
	}

	public void init(FilterConfig filterConfig) throws ServletException {
		//1.获取Filter名称
		String filterName = filterConfig.getFilterName();
		System.out.println(filterName);
		
		//2.获取初始化参数
		String encoding = filterConfig.getInitParameter("encoding");	//根据指定名称获取
		System.out.println(encoding);
		
		Enumeration names = filterConfig.getInitParameterNames();//获取所有名称
		while(names.hasMoreElements()){
			System.out.println(names.nextElement());
		}
		
		//3.获取ServletContext对象
		filterConfig.getServletContext();
	}
}

然后修改web.xml的配置文件.



	
	
	
		demoFilter
		cn.itcast.web.filter.DemoFilter
	
	
	
		demoFilter2
		cn.itcast.web.filter.DemoFilter2
		
		
		
			encoding
			utf-8
		
		
			username
			tom
		
		
	
	
	
		demoFilter2
		/index.jsp	
	
	
	
		demoFilter
		/index.jsp	
	
	
  
    index.jsp
  

运行到服务器上,控制台会输出.

FilterConfig 的作用_第1张图片

 

 

你可能感兴趣的:(§,--,JavaEE)