1. servlet 
   当第一次请求一个servlet资源时,servlet容器创建这个servlet实例,并调用他的 
init(ServletConfig config)做一些初始化的工作,然后调用它的service方法处理请求。当第二次请求这个servlet资源时,servlet容器就不在创建实例,而是直接调用它的service方法处理请求,也就是说servlet对象是常驻内存的,是单例,因此不要把一些属性作为servlet的成员变量,避免并发访问问题,当servlet容器关闭或者重新加载web应用时,servlet会调用它的destory()方法,然后就就结束了。 
2 filter ,Listener 
  当web容器启动的时候,去读取每个web应用的web.xml配置文件,当配置文件中配有filter和listener时,web容器实例化listener,filter,然后调用Filter的init(FilterConfig)方法做一些初始化(注意当我们的filter启动错误时,这个web应用将 
不能用),当请求一个资源而这个资源正好被这个过滤器过滤,调用filter的doFilter方法,当servlet容器关闭或者重新加载web应用时,filter会调用它的destory()方法,然后销毁这个对象,listener是当某个事件发生时,调用它特定法,HttpSessionListener 
,当创建一个session时会调用它的sessionCreated()方法,当servlet容器关闭或者重新加载web应用时lister对象被销毁。 
总之,servlet filter listener 都是单例的,就是说在运行时只存在一个实例。

servelt filter listener 的生命周期的更多相关文章

  1. filter和listener的生命周期

    filter(过滤器)和listener(监听器)的生命周期 老实说 生命周期要是说成作用的时间范围我会理解的更好 filter package com.javaweb.filter; import ...

  2. Listener监听器生命周期

    一.Listener生命周期 listener是web三大组件之一,是servlet监听器,用来监听请求,监听服务端的操作. listener分为:(都是接口类,必须实现相应方法) 1.生命周期监听器 ...

  3. Java实现生命周期管理机制

    先扯再说 最近一直在研究某个国产开源的MySQL数据库中间件,拉下其最新版的代码到eclipse后,启动起来,然后做各种测试和代码追踪:用完想要关闭它时,拉出它的STOP类想要运行时,发现这个类里赫然 ...

  4. Filter的使用及其生命周期介绍

    一.Filter 1. Filter简介 > Filter翻译为中文是过滤器的意思. > Filter是JavaWeb的三大web组件之一:Servlet.Filter.Listener ...

  5. JavaWEB 通过Listener理解域对象生命周期

    利用 ServletRequestListener.HttpSessionListener 以及 ServletContextListener 可以把request,session,以及Applica ...

  6. servlet 和filter 的生命周期说明

    servlet : 当客户端第一次访问servlet的时候,服务器就会创建servlet实例,servlet 就会执行init方法,每次请求,服务器会开一个新的线程访问servlet中得service ...

  7. [原创]java WEB学习笔记47:Servlet 监听器简介, ServletContext(Application 对象), HttpSession (Session 对象), HttpServletRequest (request 对象) 监听器,利用listener理解 三个对象的生命周期

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  8. Servlet、Filter 生命周期

    Servlet作为JavaEE必须掌握的内容,Struts2通过使用Filter的功能实现了一个MVC的框架.因此掌握这Servlet以及Filter的生命周期显得非常重要. 1. Servlet的生 ...

  9. Servlet和Filter生命周期

    1. 生命周期 1.1. Servlet生命周期 servlet是一个基于java技术的WEB组件,运行在服务器端,我们利用 sevlet可以很轻松的扩展WEB服务器的功能,使它满足特定的应用需要.s ...

随机推荐

  1. LeetCode题解之 Search in a Binary Search Tree

    1.题目描述 2.问题分析 利用递归遍历二叉查找树. 3.代码 TreeNode* searchBST(TreeNode* root, int val) { if (root == NULL) ret ...

  2. jquery插件导出excel和pdf(解决中文乱码问题)

    参考文件:http://jackyrong.iteye.com/blog/2169683 https://my.oschina.net/aruan/blog/418980 https://segmen ...

  3. elasticsearch DSL查询

    总结一个DSL的用法吧,语法网上查去,只记录一点心得,也是研究了半天,太麻烦了 先附上python代码 #!/usr/bin/env python # _*_ coding:utf-8 _*_ fro ...

  4. C# 倒计时

    c#中有一个叫做timespan的数据类型,可以这样构造: TimeSpan ts = , , ); TimeSpan(hour,minute,second); 然后拖进去一个timer,叫timer ...

  5. 单例模式实现 Volitile , interlocked

    //单例模式: //1. 双检锁机制 Volatile.write() //2. 静态变量 //3. Interlocked.CompareExchange(ref single, temp, nul ...

  6. 索引,B+ tree,动态hash表

    数据库课索引部分的学习笔记. 教材: Database System: The Complete Book, Chapter 15 Database System Implementation, Ch ...

  7. 插入算法---java实现

    插入排序java代码实现 package algorithms.插入排序; import java.io.BufferedReader; import java.io.InputStreamReade ...

  8. xml 注意事项

      <?xml version="1.0" encoding="GB2312"?> xml区分大小写,只能有一个根元素,属性值必须放在引号中,空格不 ...

  9. 关于mybatis反向生成为什么有时候实体类会变成两个

    一般来说,将TEXT字段,从一张操作频繁的表中拆分出去,成为一个Key-Value结构的独立表是 好处颇多的. 其有利之处主要体现在下面三个方面: PS:以下的讨论对象均基于Innodb引擎 1. 便 ...

  10. TiDB数据库 使用syncer工具同步实时数据

    mysql> select campaign_id ,count(id) from creative_output group by campaign_id; rows min 44.23 se ...