1.首先是在服务器在启动的时候,执行Filter的构造函数,然后是init方法。
2.在请求到达的时候调用doFilter方法里的语句。
3.执行chain.doFilter函数:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {System.out.println("执行了doFilter");
chain.doFilter(request, response);
System.out.println("返回了doFilter");}

每一次拦截请求时都会调用。
参数:
ServletRequest request
> 请求报文
ServletResponse response
> 响应报文
FilterChain chain
> 该对象的作用就是放行请求:
可以通过 chain.doFilter(request,response) 放行请求。
当调用chain.doFilter()就相当于调用目标资源的service()方法。
4.服务器运行请求的web资源。
4.再之后是doFilter的剩下的语句。
5.最后是destroy方法

转载于:https://www.cnblogs.com/xuesheng/p/7399340.html

Filter的生命周期相关推荐

  1. Servlet 和Filter的生命周期

    Servlet的生命周期 1.客户端请求该 Servlet; 2.加载 Servlet 类到内存; 3.实例化并调用init()方法初始化该 Servlet; 4.service()(根据请求方法不同 ...

  2. Filter过滤器的这些内容(Filter的生命周期FilterChain过滤器链Filter的拦截路径...),你都理解了吗?

         说说Filter(过滤器),它是javaWeb的三大组件之一,三大组件包括Servlet,Filter,Listener.Servlet前面已经详细说过了,这篇说的是Filter,关于Lis ...

  3. 请简述Filter生命周期的各个阶段。

    Filter的生命周期可分为创建.执行.销毁三个阶段. 1.创建阶段:Web服务器启动的时候会创建Filter实例对象,并调用init()方法,完成对象的初始化. 2.执行阶段:当客户端请求目标资源时 ...

  4. Filter过滤器的生命周期和工作原理

    一.Filter是什么? Filter:过滤器,它需要实现javax.servlet.Filter接口.Filter是过滤器,与拦截器不同.过滤器是先于与之相关的Servlet和JSP运行在服务器上. ...

  5. 黑马day14 过滤器概述amp;生命周期amp;运行过程

    过滤器:当訪问一个web资源的时候,过滤器就在你訪问这个web资源的前进行拦截...在放行过后...filter过滤器也能够做一些其它的事情. 编写过滤器的步骤: 1.写一个过滤器类实现filter接 ...

  6. 04_过滤器Filter_04_Filter生命周期

    [Filter生命周期] [init(FilterConfig filterConfig) throws ServletException] *和Servlet程序类似,Filter的创建和销毁由we ...

  7. vue的组件/data的参数/组件传值/插槽/侦听器/生命周期钩子函数

    目录 组件结构 组件的命名规则: 组件的data参数 <font color='red'> 组件的父子传值prop(通信) <font color='red'>组件的子--&g ...

  8. shiroFilter生命周期

    基本说明 spring 配置信息 获取shiroFilter shiroFilter init doFilter executeChain步骤(一) executeChain步骤(二) destory ...

  9. Vue学习(watch、computed、生命周期、filter)- 学习笔记

    文章目录 Vue学习(watch.computed.生命周期)- 学习笔记 watch 监听 computed 计算属性 set---动态添加属性 delete---删除 生命周期 filter 过滤 ...

最新文章

  1. java开怎么能不知道Netty几个核心类呢?
  2. Android 笔记一
  3. mysql设置catalog_Catalog与Schema
  4. 技术人员,该如何向业务和产品“砍需求”?
  5. 使用deeplearning4j训练Word2Vec(Java操作)
  6. Activiti 学习笔记记录(2016-8-31)
  7. 星尘小组第十一周翻译-设计和优化索引
  8. web.xml 总结
  9. C++查漏补缺之流状态
  10. RedHat 7配置KVM和桥接
  11. 【读书笔记《Android游戏编程之从零开始》】11.游戏开发基础(SurfaceView 游戏框架、View 和 SurfaceView 的区别)
  12. IP 防护等级技术白皮书
  13. UCHome源码阅读
  14. 13.包装类和字符串
  15. java基础之String类型
  16. OpenSSL文档阅读笔记-RSA Encryption Decryption Example with OpenSSL in C
  17. 单道批-多道批-分时-实时
  18. 小白怎么快速入门游戏建模软件C4D?
  19. win10计算机怎么改中文,windows10 中文,小编教你Win10怎么设置中文语言
  20. 淄博烧烤火了,其他的烧烤靠什么火呢

热门文章

  1. 你玩的音游可能真是AI生成的,Love Live!工作室发了篇论文,用AI节省50%作谱时间...
  2. Docker现已加入苹果M1“豪华午餐”,程序员换新Mac的理由又多了一条
  3. 世道变了!这个AI竞赛不再要刷榜成绩,直接看商业落地计划书
  4. 全球第一所人工智能大学成立:培养硕博研究生,全员全额奖学金
  5. 这项X射线技术让芯片无秘密可言:纳米级还原内部构造,现已破解16nm芯片
  6. CycleGAN作者朱俊彦宣布重返CMU,担任助理教授
  7. layer弹出信息框API
  8. mac环境下的linux光标快捷键
  9. Protractor
  10. WebX5 button tabs的bind-text属性设置