目录

一 开发步骤

二 实战

三 测试


一 开发步骤

1 编写监听器

2 注册监听器

二 实战

1 监听器编写

import javax.servlet.ServletContext;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;/**
* @ClassName: OnlineCount
* @Description: 在线人数监听
* @Date: 2020/6/15
* @Author: cakin
*/
public class OnlineCount implements HttpSessionListener {/*** 功能描述:会话创建时刻进行监听** @param se 会话事件* @author cakin* @date 2020/6/15* @description: 创建一个会话时,在线人数加1*/public void sessionCreated(HttpSessionEvent se) {ServletContext servletContext = se.getSession().getServletContext();Integer onlineCount = (Integer) servletContext.getAttribute("onlineCount");System.out.println("增加一个session");if (onlineCount == null) {onlineCount = 1;} else {int count = onlineCount.intValue();onlineCount = ++count;}servletContext.setAttribute("onlineCount", onlineCount);}/*** 功能描述:会话销毁时刻进行监听** @param se 会话事件* @author cakin* @date 2020/6/15* @description: 销毁会话时,在线人数建1*/public void sessionDestroyed(HttpSessionEvent se) {ServletContext servletContext = se.getSession().getServletContext();System.out.println("减少一个session");Integer onlineCount = (Integer) servletContext.getAttribute("onlineCount");if (onlineCount == null) {onlineCount = 0;} else {int count = onlineCount.intValue();onlineCount = --count;}servletContext.setAttribute("onlineCount", onlineCount);}
}

2 注册监听器

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--监听器所在的类--><listener><listener-class>OnlineCount</listener-class></listener><!--超时时间为1分钟--><session-config><session-timeout>1</session-timeout></session-config>
</web-app>

3 JSP页面测试

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html><head><title>$Title$</title></head><body><h1>当前在线人数为<%=this.getServletConfig().getServletContext().getAttribute("onlineCount")%></h1></body>
</html>

三 测试

Servlet的监听器实现在线人数统计相关推荐

  1. linux服务器在线人数,servlet监听器实现在线人数统计源码实例

    servlet监听器实现在线人数统计 一.准备知识 1.servlet:servlet是一种运行服务器端的Java应用程序,具有独立于平台和协议的特性,并且可以动态的生成web页面,它工作在客户端请求 ...

  2. java怎么快速创建监听类_java_利用java监听器实现在线人数统计,1.在工程中创建监听类SessionLi - phpStudy...

    利用java监听器实现在线人数统计 1.在工程中创建监听类SessionListener 并且实现HttpSessionListener接口,代码如下 import javax.servlet.htt ...

  3. 通过监听器实现在线人数统计

    本文主要介绍通过servlet的监听器监听会话的创建.销毁.登录信息会话变量的设置,用于实现在线用户统计. package com.chinasofti.ordersys.listeners;impo ...

  4. 使用监听器实现一个统计网站在线人数的示例

    (1)创建一个监听器实现类 要大致统计一个网站的在线人数,首先,可以通过ServletContextListener监听,当Web应用上下文启动时,在ServletContext中添加一个List,用 ...

  5. Java监听器实现网站在线人数统计

    1.监听器定义 监听器也叫Listener,是Servlet的监听器,它可以监听客户端的请求.服务端的操作等.通过监听器,可以自动激发一些操作,比如监听在线的用户的数量. 2.常见的监听器 1)Ser ...

  6. SpringMVC的在线人数统计监听器

    一.session简单介绍 在做在线统计人数监听器前,需要先简单了解一下session.         Session存储在服务器端,一般放置在服务器的内存中(为了高速存取),Sessinon在用户 ...

  7. 使用监听器Listener实现在线人数统计功能

    使用监听器Listener实现在线人数统计功能 目录树及使用的文件 1.首先创建一个CountListener类实现HttpSessionListener接口,实现接口的两个方法:sessionCre ...

  8. 利用HttpSessionListener实现网站在线人数统计功能

    为什么80%的码农都做不了架构师?>>>    在网站中经常需要进行在线人数的统计.过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时候计数器加1,然后当用户点击 ...

  9. html页面统计在线人数,统计在线人数couter

    如何运用内置对象session和application对象实现统计在线人数 首先创建一个全局应用程序类Global.asax   protected void Application_Start 这几 ...

最新文章

  1. R构建Kmeans聚类模型
  2. 获取input中的值
  3. 记一次python升级版本遇到的事
  4. InnoDB和MyISAM引擎的效率比较
  5. 【运营】如何有效率的进行“用户访谈”
  6. php中strtotime的意思,php中strtotime函数用法详解
  7. 什么是卷影复制,卷影服务是什么
  8. 20-Joint entity and relation extraction based on a hybrid neural network(LSTM-ED+CNN),考虑长距离的实体标签之间的关
  9. 1110: 最近共同祖先(函数专题)
  10. 动态规划优化_斜率优化
  11. 什么是闭包?闭包的优缺点?
  12. [Java] 蓝桥杯ALGO-42 算法训练 送分啦
  13. 设计模式(9)----- 创建型模式-----工厂设计模式(抽象工厂模式)
  14. 操盘手教你抓涨停的办法
  15. 课程设计:基于C52单片机的循迹小车
  16. 4.19华为技术面+4.21华为主管面(已OC)
  17. CausalImpact
  18. input 框换背景色
  19. 计算机开机进不了bios,开机进不了bios,教您怎么解决win8开机进不了bios
  20. Genymotion目前速度最快的Android模拟器+ova包

热门文章

  1. 网站服务器课件,《WEB服务器》PPT课件.ppt
  2. 计算机word教案设计,Word文档教学设计
  3. Microsoft Word 实用功能
  4. halocn标定找旋转中心_对摄像头进行标定
  5. react 渲染table数据
  6. 常见的HTTP状态码(1xx-5xx)
  7. 股票的发行原理是什么?
  8. 可爱猫python_安装 · 【可爱猫】 微信机器人的 http插件 · 看云
  9. Launchpad是什么?Launchpad使用教程
  10. LINGO学习笔记01