JavaWeb 第5章 任务3 使用监听器统计在线用户数量

本文详细介绍了如何在JavaWeb应用中利用监听器组件来统计在线用户数量。通过实现HttpSessionBindingListener接口,监听session的生命周期变化,从而在用户登录和登出时更新在线用户计数。此外,还探讨了ServletContexListener接口在Web应用初始化中的作用,以及如何配置和使用监听器的关键代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaWeb 应用设计及实战 目录

上一章  下一章

上一个任务/上一节       下一个任务/下一节

目录

任务 3    使用监听器统计在线用户数量

5.3.1   认识监听器组件

      1.Servlet 监听器

    2. HttpSessionBindingListener 接口

5.3.2   网站在线用户数量统计

        5.3.3   ServletContexListener 与 Web 应用初始化

示例6

监听器的关键代码:

Servlet  的关键代码:

监听器及 Servlet 配置的关键代码:


任务 3    使用监听器统计在线用户数量

关键步骤如下。

  • 实现 HttpSessionBindingListener 接口
  • 在 valueBound() 和 valueUnbound() 方法中实现用户数量的统计
  • 在 web.xml 文件中配置监听器

5.3.1   认识监听器组件

      1.Servlet 监听器

       监听器是 Web 应用程序事件模型的一部分,当Web 应用中的某些状态发生改变时,

会产生相应的事件。监听器可以接收这些事件,并可以在事件发生时进行相关处理。

       使用 Servlet 监听器可以实现对时间的监听。在 Servlet ApI 中共定义了 8  个监听器

接口,可以用于监听 ServletContext、HttpSession、和 ServletRequest  对象的生命周期、

以及这些对象的属性引发的事件。这 8 个监听器接口如表 5-7 所示。

    2. HttpSessionBindingListener 接口

   如果一个对象实现了 HttpSessionBindingListener  接口 ,当这个对象被添加到 session 或者

从 session 中删除时, Servlet 容器都能够进行识别并发出相应的通知,在对象接收到通知后,

就可以进行一系列的操作。HttpSessionBindingListener 接口提供的方法如表 5-8 所示。

表 5-7 监听器接口介绍
监听器接口 说明
javax.servlet.ServletContextListener 实现该接口,可以在Servlet 上下文对象初始化或者销毁时得到通知
javax.servlet.ServletContextAttributeListener 实现该接口,可以在Servlet 上下文中的属性列表发生变化时得到通知
javax.servlet.http.HttpSessionListener 实现该接口,可以在 session 创建后或者失效前得到通知
javax.servlet.http.HttpSessionActivatonListener 实现该接口的对象,如果绑定到 session 中,当 session 被钝化或者激活时,Servlet 容器将通知该对象
javax.servlet.http.HttpSessionAttributeListener 实现该接口,可以在session 中的属性列表发生变化时得到通知
javax.servlet.http.HttpSessionBindingListener 实现该接口,可以是一个对象在绑定 session 或者从 session 中删除时得到通知
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值