一、Servlet中对象作用域

1、 ServletContext 上下文

应用服务器一启动就产生该对象,服务器关闭即销毁

作用于全局,所有Servlet ,相当于静态变量

2、 HttpSession 会话

客户端第一次请求产生,session过期销毁

作用于同一个客户端,相当于成员变量

3、 ServletRequest请求

一次请求产生一个对象,请求结束即销毁

作用于同一次请求,相当于局部变量

二、Servlet监听器

工作流程:

(1)确定事件源

(2)写一个类,实现Servlet监听器接口,并从写接口里面的方法

(3)在web.xml里注册建立联系,

  <listener>

  <listener-class>Servlet类事件源全路径</listener-class>

  </listener>

(4)事件源触发事件,监听器调用相应方法

1、ServletContext事件

(1)ServletContextListener接口,用于监听ServletContext的创建与销毁

  相应方法:

  void contextInitialized(ServletContextEvent e); ServletContext创建触发

  void contextDestroyed(ServletContextEvent e); ServletContext销毁触发

(2)ServletContextAttribyteListener接口,用于监听ServletContext属性状态

  相应方法:

  void attributeAdded(ServletContextEvent e); ServletContext属性加入触发

  context.setAttribute(“a”,”b”);

  void attributeRemovd(ServletContextEvent e); ServletContext属性删除触发

  context.removeAttribute(“a”,);

  void attributeReplaced(ServletContextEvent e); ServletContext属性修改触发

  context.setAttribute(“a”,”c”);

2、HttpSession事件

(1)HttpSessionListener接口,用于监听session的创建与销毁

相应方法:

void sessionCreated(HttpsessionEvent e) session 创建触发

void sessionDestroyed (HttpsessionEvent e) session 销毁触发

(2)HttpSession AttributeListener接口,用于监听session属性状态

相应方法:同ServletContextAttribyteListener

(3)HttpSessionBindingListener接口,用于监听绑定对象到Session属性监听

唯一一个不用在web.xml里注册的监听接口

绑定

Ression.setAttribute(“a”, 实现该接口的对象),

触发void valueBound(HttpSessionBindingEvent e);方法

移除:

Ression.removeAttribute(“a”),

触发void valueUnbound(HttpSessionBindingEvent e);方法

3、 SercletRequest事件

(1)ServletRequestListener接口 用于监听request的销毁与创建

(2)ServletRequesAttributetListener接口 用于监听request的属性状态

servlet HttpSession 监听器的更多相关文章

  1. Servlet的监听器

    Listener是Servlet的监听器,它可以监听客户端的请求.服务端的操作等.通过监听器,可以自动激发一些操作,比如监听在线的用户的数量.当增加一个HttpSession时,就激发sessionC ...

  2. 第六章 对象作用域与servlet事件监听器

          作用域对象 Servlet上下文监听器 Servlet会话监听器 Servlet请求监听器     一:对象作用域 作用域对象 属性操作方法 作用域范围说明 ServletContext( ...

  3. Servlet的监听器Listener

    Servlet的监听器Listener,它是实现了javax.servlet.ServletContextListener 接口的服务器端程序,它也是 随web应用的启动而启动,只初始化一次,随web ...

  4. JSP学习笔记(5)——Servlet、监听器、过滤器、MVC模式介绍

    MVC模式 在讲解Servlet前,先介绍一下MVC模式. M:model 模型,相当于数据层,用于存放数据,如一个Java中的一个bean类 V:view 视图,相当于页面层,用于显示数据,如一个网 ...

  5. Servlet事件监听器

    监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行. 面试题:请描述一下java事件监听机 ...

  6. 监听器第一篇【基本概念、Servlet各个监听器】

    什么是监听器 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行. 为什么我们要使用监听器 ...

  7. 05).30分钟学会Servlet+过滤器+监听器+实际案例

    一.Servlet简介: Servlet程序处理流程 二.Servlet程序实现 实现要求 Servlet属于java ee范畴,而java和javac属于java se范畴,要想编译servlet必 ...

  8. Servlet之监听器(Listener)

    一.监听器(Listener)概述 1.概念 JavaWeb中的监听器是Servlet规范中定义的一种特殊类,它用于监听web应用程序中的ServletContext, HttpSession和 Se ...

  9. Spring依赖注入servlet会话监听器

    Spring提供了一个 “ContextLoaderListener” 监听器,以使 Spring 依赖注入到会话监听器. 在本教程中,通过添加一个 Spring 依赖注入一个bean 到会话监听器修 ...

随机推荐

  1. 没有document.getElementByName

    首先声明的是: document.getElementByName方法没有.document.getElementsByName得到的是标签的数组 document.getElementId得到的是某 ...

  2. 通过ip获取地理位置信息

    http://ipinfo.io/developers 直接使用get请求  url: http://ipinfo.io/json    即可获得json数据

  3. 数学(容斥计数):LNOI 2016 方

    Description 上帝说,不要圆,要方,于是便有了这道题.由于我们应该方,而且最好能够尽量方,所以上帝派我们来找正方形 上帝把我们派到了一个有N行M列的方格图上,图上一共有(N+1)×(M+1) ...

  4. [转]NHibernate之旅(1):开篇有益

    本节内容 NHibernate是什么 NHibernate的架构 NHibernate资源 欢迎加入NHibernate中文社区 作者注:2009-11-06已更新 NHibernate开篇有益 学习 ...

  5. SDPLR的安装过程(matlab)

    SDPLR 半正定规划优化工具的安装过程很简单,只要按照SDPLR 1.03-beta User's Guide (short version).pdf的介绍安装就可以. 运行在下载的工具包目录里运行 ...

  6. 使用aespython进行ECB加解密示例

    CBC示例: from aespython import cbc_mode, key_expander, aes_cipher key = 'MluJMEZegVmrnWDaBiG1j7lqpkxNH ...

  7. 【解决】笔记本发射WiFi

    这个百度一下一大堆 .. 不过还是希望自己总结一发适合自己的 (*^__^*)  废话不多说,开始 基于几个bat (1)CreateWlan.bat netsh wlan set hostednet ...

  8. mysql常用的一些命令,用于查看数据库、表、字段编码

    1.查看数据库支持的所有字符集         show character set;或show char set; 2.查看当前状态 里面包括当然的字符集设置         status或者\s ...

  9. KMP算法(模板)

    话说kmp真的挺难理解的,花了挺大功夫的,恩,找了段好理解的代码,做模板了 int KMP(char *s,char *p){ int ans = -1; nex[0] = 0; int lenp = ...

  10. 在html使用a标签 直接下载图片 不通过后台实现直接下载

    由于a标签在HTML中链接图片会被识别并打开到网页上 如果想下载这个图片的话 就需要连接到后台读取文件并生成一个头信息下载.不过可以先给a标签加上一个download属性即可直接下载了. <a ...