Http 过滤器

Javax.servlet.*;
|-- interface Filter 及过滤器

实现步骤

  1. 普通java类实现Fiter接口
public class MainFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException{        
    }
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException{
    }
    @Override
    public void destroy(){
    }
}
  1. web.xml 里面配置这个过滤器
    
        MainFilter
        com.flynn.MainFilter
    
    
        MainFilter
        /*
    
过滤器相关Api
  • interface Filter 过滤器核心接口

    • void init(filterConfig); 初始化方法,在服务器启动时候执行
    • void doFilter(request,response,filterChain); 过滤器拦截的业务处理方法
    • void destroy(); 销毁过滤器实例时候调用
  • interface FilterConfig 获取初始化参数信息

    • String getInitParameter(java.lang.String name)
    • Enumeration getInitParameterNames()
  • interface FilterChain 过滤器链参数;一个个过滤器形成一个执行链;

    • void doFilter(ServletRequest request, ServletResponse response) ; 执行下一个过滤器或放行
对指定的请求拦截

/* 表示拦截所有的请求
默认拦截的类型:(直接访问或者重定向)

REQUEST

拦截转发:

FORWARD

拦截包含的页面(RequestDispatcher.include(/page.jsp); 对page.jsp也执行拦截)

INCLUDE

拦截声明式异常信息:

ERROR

你可能感兴趣的:(Http 过滤器)