Java监听器listener的介绍

listener

能做什么

当web中某些动作发生之后,服务器就调用listener中对应的方法。

内部机制

接口回调

Web监听器

步骤

创建需要的监听器类,实现接口

注册|配置(有些不需要注册)监听器。

servlet4.0可以用反射实现@WebListener()

servlet2.5是需要在web.xml中配置

com.itheima.listener.MyRequestListener

三个作用域的监听器(需要注册)

request ---httpServletRequest

session ---httpSession

aapplication --- ServletContext

用途

主要是这3个域的创建与销毁时调用方法

ServletContextListener

利用它来,在servletcontext创建的时候,

完成自己想要的初始化工作

执行自定义任务调度。 执行某一个任务。 Timer

HttpSessionListener

统计在线人数

ServletRequestListener

request创建:

访问服务器上的任意资源都会有请求出现。

访问 html:会

访问 jsp:会

访问 servlet:会

request销毁:

服务器已经对这次请求作出了响应。

ServletContextListener

servletcontext创建:

启动服务器的时候

servletContext销毁:

关闭服务器. 从服务器移除项目

HttpSessionListener

session的创建

只要调用 getSession

html:不会

jsp:会

servlet:会 要写getSession();

session的销毁

超时 30分钟

非正常关闭 销毁

正常关闭服务器(序列化)

监听三个作用域属性状态变更(需要注册)

​servletContext --- ServletContextAttributeListener

​request --- ServletRequestAttributeListener

​session --- HttpSessionAttributeListener

条件

可以监听在作用域中值 添加 | 替换 | 移除的动作。

调用的相应的方法。

用法(重载,只是3方法的参数不同,查API就行了)

@Override

public void attributeAdded(HttpSessionBindingEvent sbe) {

/* This method is called when an attribute

is added to a session.

*/

}

@Override

public void attributeRemoved(HttpSessionBindingEvent sbe) {

/* This method is called when an attribute

is removed from a session.

*/

}

@Override

public void attributeReplaced(HttpSessionBindingEvent sbe) {

/* This method is invoked when an attibute

is replaced in a session.

*/

}

监听httpSession里面存值的状态变更(不用注册)

HttpSessionBindingListener

监听对象与session 绑定session.setAttribute("键名",对象)和解除绑定session.removeAttribute("键名")的动作

作用

JavaBean被绑定了和解绑时调用

步骤

让JavaBean实现该接口

HttpSessionActivationListener

用于监听现在session的值 是 钝化 (序列化)还是活化 (反序列化)的动作

作用

钝化 (序列化)将内存中的数据存到硬盘中

活化 (反序列化)将硬盘的数据加载到内存中

session中的值可能会很多, 并且我们有很长一段时间不使用这个内存中的值, 那么可以考虑把session的值可以存储到硬盘上【钝化】,等下一次在使用的时候,在从硬盘上提取出来。 【活化】

步骤

创建

让JavaBean实现该接口和Serializable接口

session中的值一段时间不用自动钝化的配置

1.在tomcat里面 conf/context.xml 里面配置

对所有的运行在这个服务器的项目生效

2.在conf/Catalina/localhost/context.xml 配置

对 localhost生效。 localhost:8080

3.在自己的web工程项目中的 META-INF/context.xml

只对当前的工程生效。

存储地址 tomcat目录\work\Catalina\localhost\ListenerDemo\itheima

maxIdleSwap : 1分钟不用就钝化

directory : 钝化后的那个文件存放的目录位置。

httplistener java_Java监听器listener的介绍相关推荐

  1. httplistener java_Java监听器Listener使用详解

    监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通java程序,这个程序专门用于监听另一 ...

  2. servlet监听器Listener介绍和使用

    1监听器Listener 1.1 Listener简介 javaEE包括13门规范 在课程中主要学习 servlet技术 和 jsp技术,其中 servlet规范包括三个技术点:servlet,lis ...

  3. Listener(监听器)的简单介绍

    Listener(监听器)的作用和内部机制 作用:监听某个事件的发生,状态的改变 内部机制:接口回调 八个web监听器 实现监听: 创建类实现监听器接口 web.xml文件中配置(注册)监听器< ...

  4. java web自定义监听器_Android自定义监听器Listener(自定义Java Callback回调事件)

    Callback回调事件介绍 Java或Android中创建异步回调最普遍的做法就是使用listener监听器或者observer观察者模式来解决,listener回调事件通常用于实现一个代码去监听另 ...

  5. 一篇文章教你学会使用SpringBatch 监听器Listener

    文章目录 一.SpringBatch监听器 二.搭建SpringBatch开发环境 三.监听器详细介绍 1.JobExecutionListener 2.StepExecutionListener 3 ...

  6. 监听器(Listener)学习

    一.监听器介绍 1.1.监听器的概念 监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通 ...

  7. 大数据WEB阶段(十六)JavaEE三大 核心技术之监听器Listener

    Listener监听器 一.概述 Servlet三大核心技术之一 Servlet.Filter.Listener Servlet技术规范中定义了八种监听器用来监听web应用开发中对应的事件. 监听器可 ...

  8. JavaWeb中监听器Listener+过滤器filter+拦截器interceptor区别

    JavaWeb中监听器Listener+过滤器filter+拦截器interceptor区别 如果从整个项目中看,一个servlet请求的执行过程就变成了这样context-param–>lis ...

  9. 监听器Listener

    监听器Listener Servlet监听器是监听事件发生,在事件发生前后能够做出相应处理的web应用组件. PS:与传统监听直接将监听事件注册在事件源上不同,Servlet的监听器是统一配置在web ...

最新文章

  1. 高德地图2020最新版下载导航wince_导航定位错误致青城山严重拥堵,高德地图回应:已优化...
  2. 正则表达式之?、(?:pattern)、(?!pattern)、(?=pattern)理解及应用
  3. SAP SD买十送一的业务处理与系统实现
  4. SQL数据库学习-简单查询
  5. java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
  6. 彻底解决网络爬虫遇到的中文乱码问题
  7. linux下php可以实现哪些功能,基于Linux的远程管理系统的设计与实现(PHP)
  8. 阶乘因式分解(一) -- ACM解决方案
  9. P2转P3'dict' object has no attribute 'has_key'
  10. 贝叶斯思维 统计建模的python_贝叶斯思维统计建模的Python学习法
  11. Android 应用开发(50)---GridLayout(网格布局)
  12. All about the “paper”
  13. Windows Phone开发(37):动画之ColorAnimation 转:http://blog.csdn.net/tcjiaan/article/details/7526026...
  14. c语言程序转python_C语言程序转换为Python语言
  15. 新书推荐 |《点石成金:访客至上的Web和移动可用性设计秘笈(原书第3版)》...
  16. cad设计绘图软件:AutoCAD 2020 Mac版
  17. HDFS的命令行使用【常用 hdfs 命令】
  18. SecureCRT 7.3.4 安装图解----破解图解
  19. 020.3.25普及C组 母鸡下蛋(hen)【纪中】【模拟】
  20. 相关性分析-皮尔森、斯皮尔曼肯德尔相关性系数

热门文章

  1. 2015 ACM/ICPC Asia Regional Hefei Online题解
  2. 特例模式(Special Case Pattern)与空对象模式(Null Pointer Pattern)—— 返回特例对象而非 null
  3. 圆上的定理 —— 圆周角定理与相交弦定理
  4. 面向项目(八)—— #if defined 与 #ifdef
  5. 程序结构程序设计(二)
  6. numpy中多维数组的轴(axis)
  7. php中的全局异常,tp5 API 自定义全局异常处理(中)
  8. JAVA浮点数浮点数转换成人民币读法
  9. python是干什么的-python干嘛用
  10. python三本经典书籍-有哪些 Python 经典书籍?