zoukankan      html  css  js  c++  java
  • Servlet Filter 中init和destroy问题

    测试源码如下:

     1 package com.FilterTest.Filter;
     2 
     3 import java.io.IOException;
     4 
     5 import javax.servlet.Filter;
     6 import javax.servlet.FilterChain;
     7 import javax.servlet.FilterConfig;
     8 import javax.servlet.ServletException;
     9 import javax.servlet.ServletRequest;
    10 import javax.servlet.ServletResponse;
    11 
    12 public class TestFilter implements Filter {
    13 
    14     @Override
    15     public void init(FilterConfig filterConfig) throws ServletException {
    16         print("init");
    17     }
    18 
    19     @Override
    20     public void doFilter(ServletRequest request, ServletResponse response,
    21             FilterChain chain) throws IOException, ServletException {
    22         print("do filter");
    23         chain.doFilter(request, response);
    24         print("do filter End!");
    25     }
    26 
    27     @Override
    28     public void destroy() {
    29         print("destory!");
    30     }
    31     
    32     void print(String info){
    33         System.out.println(info+" Thread Name:"+Thread.currentThread().getName());
    34     }
    35 }

    访问首页后调试控制台输出:

    init 和destroy在服务重启的时候执行,且只有一次:

    访问主页后:

    do filter Thread Name:http-nio-8081-exec-11
    Second Filter----do Filter http-nio-8081-exec-11
    Second Filter----do Filter End! http-nio-8081-exec-11
    do filter End! Thread Name:http-nio-8081-exec-11
    do filter Thread Name:http-nio-8081-exec-12
    Second Filter----do Filter http-nio-8081-exec-12
    Pages Filter----do Filter http-nio-8081-exec-12
    Pages Filter----do Filter End! http-nio-8081-exec-12
    Second Filter----do Filter End! http-nio-8081-exec-12
    do filter End! Thread Name:http-nio-8081-exec-12

    Filter是根据配置前后然后根据Servlet域大小来先后执行!

    最近正在开始学习PHP,遇到一些问题发现难以搜索,所以做了一些问题解决集锦,希望可以对大家有所帮助。如有问题,欢迎邮件联系本人。 MingLouis@qq.com
  • 相关阅读:
    【中位数 均分纸牌】 糖果传递
    【模板】 均分纸牌
    【离散化】 电影
    【离散化】 区间和
    【最大子矩阵】 城市游戏
    vue中如何引入Element-ui
    详细教你:如何搭建vue环境和创建一个新的vue项目
    vue中如何引入bootstrap
    十天冲刺(4)
    十天冲刺(3)
  • 原文地址:https://www.cnblogs.com/LouisMing/p/5859977.html
Copyright © 2011-2022 走看看