zoukankan      html  css  js  c++  java
  • 过滤器的流程以及实现

    过滤器链的执行顺序:

     代码展示:

     1 //一定要实现javax.servlet.Filter这个接口
     2 //导入这个包:import javax.servlet.*;
     3 
     4 //urlPatterns = "/*"  过滤所有的资源
     5 //@WebFilter 说明我们这个是个过滤器
     6 //按照全类名的字典表来比较过滤器执行的顺序
     7 @WebFilter(filterName = "FirstFilter",urlPatterns = "/*")
     8 public class FirstFilter implements Filter {
     9 
    10     //初始化的方法
    11     @Override
    12     public void init(FilterConfig filterConfig) throws ServletException {
    13 
    14     }
    15 
    16     //真正实现过滤的功能:doFilter
    17     @Override
    18     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
    19 
    20         //所有的请求都有向下类型转换一下,因为我们的所有请求都是HTTP请求
    21         //一般要用到request的时候才转,不用的时候就不转
    22         HttpServletRequest request=(HttpServletRequest)servletRequest;
    23         HttpServletResponse response=(HttpServletResponse)servletResponse;
    24 
    25         System.out.println("FirstFilter 之前。。。。");
    26 
    27         //执行下一个过滤器或者资源
    28         filterChain.doFilter(request,response);
    29 
    30         System.out.println("FirstFilter 之后+++++++++");
    31 
    32     }
    33 
    34     //销毁的方法
    35     @Override
    36     public void destroy() {
    37 
    38     }
    39 }

     结果:

  • 相关阅读:
    Use "Attach to Process" in VC Express 2010
    韩国三日游
    可耻的没通过Autodesk 3ds Max初级认证
    Trace depth and rays per second per core
    References on SSS
    Free Shave SDK
    New wisdom on offline/interactive rendering
    匹配汉字的正则表达式
    WPF中richtextbox的一些用法
    C#中禁止一个程序打开多次
  • 原文地址:https://www.cnblogs.com/dabu/p/12708475.html
Copyright © 2011-2022 走看看