JAVAWeb三大组件之Filter

JavaWeb三大组件

1、都需要在web.xml中进行配置

    Servlet

    Listener(2个感知监听器不需要配置)

    Filter

2、过滤器(Filter)

    # 它会在一组资源(jsp、servlet、.css、.html等等)的前面执行!!!

    # 它可以让请求得到目标资源,也可以不让请求达到!!!

    ###  过滤器有拦截请求的能力!!!

==============================================

过滤器如何编写

   1、写一个类实现Filter接口

JAVAWeb三大组件之Filter_第1张图片

   2、在web.xml中进行配置

        
      AFilter
      com.web.filter.AFilter
       

  
       
      AFilter
      /*

       

==============================

Filter接口三个方法:

void init(FilterConfig filterConfig)

     # 创建之后,马上执行;Filter会在服务器启动时就创建

void destory()

    # 销毁之前执行!在服务器关闭时销毁

void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

   # 每次过滤时都会执行

Filter是单例的

=======================================

FilterConfig --> 与ServletConfig相似

      *  getInitParameter() : 获取初始化参数

      *  getFilterName() : 获取过滤器名称

      *  getServletContext() : 获取application

FilterChain

      *  doFilter(ServletRequest request, ServletResponse response) : 放行

   放行,就相当于调用了目标Servlet的service方法

    

你可能感兴趣的:(JAVAWeb三大组件之Filter)