Servlet的监听器实现在线人数统计
目录
一 开发步骤
二 实战
三 测试
一 开发步骤
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的监听器实现在线人数统计相关推荐
- linux服务器在线人数,servlet监听器实现在线人数统计源码实例
servlet监听器实现在线人数统计 一.准备知识 1.servlet:servlet是一种运行服务器端的Java应用程序,具有独立于平台和协议的特性,并且可以动态的生成web页面,它工作在客户端请求 ...
- java怎么快速创建监听类_java_利用java监听器实现在线人数统计,1.在工程中创建监听类SessionLi - phpStudy...
利用java监听器实现在线人数统计 1.在工程中创建监听类SessionListener 并且实现HttpSessionListener接口,代码如下 import javax.servlet.htt ...
- 通过监听器实现在线人数统计
本文主要介绍通过servlet的监听器监听会话的创建.销毁.登录信息会话变量的设置,用于实现在线用户统计. package com.chinasofti.ordersys.listeners;impo ...
- 使用监听器实现一个统计网站在线人数的示例
(1)创建一个监听器实现类 要大致统计一个网站的在线人数,首先,可以通过ServletContextListener监听,当Web应用上下文启动时,在ServletContext中添加一个List,用 ...
- Java监听器实现网站在线人数统计
1.监听器定义 监听器也叫Listener,是Servlet的监听器,它可以监听客户端的请求.服务端的操作等.通过监听器,可以自动激发一些操作,比如监听在线的用户的数量. 2.常见的监听器 1)Ser ...
- SpringMVC的在线人数统计监听器
一.session简单介绍 在做在线统计人数监听器前,需要先简单了解一下session. Session存储在服务器端,一般放置在服务器的内存中(为了高速存取),Sessinon在用户 ...
- 使用监听器Listener实现在线人数统计功能
使用监听器Listener实现在线人数统计功能 目录树及使用的文件 1.首先创建一个CountListener类实现HttpSessionListener接口,实现接口的两个方法:sessionCre ...
- 利用HttpSessionListener实现网站在线人数统计功能
为什么80%的码农都做不了架构师?>>> 在网站中经常需要进行在线人数的统计.过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时候计数器加1,然后当用户点击 ...
- html页面统计在线人数,统计在线人数couter
如何运用内置对象session和application对象实现统计在线人数 首先创建一个全局应用程序类Global.asax protected void Application_Start 这几 ...
最新文章
- R构建Kmeans聚类模型
- 获取input中的值
- 记一次python升级版本遇到的事
- InnoDB和MyISAM引擎的效率比较
- 【运营】如何有效率的进行“用户访谈”
- php中strtotime的意思,php中strtotime函数用法详解
- 什么是卷影复制,卷影服务是什么
- 20-Joint entity and relation extraction based on a hybrid neural network(LSTM-ED+CNN),考虑长距离的实体标签之间的关
- 1110: 最近共同祖先(函数专题)
- 动态规划优化_斜率优化
- 什么是闭包?闭包的优缺点?
- [Java] 蓝桥杯ALGO-42 算法训练 送分啦
- 设计模式(9)----- 创建型模式-----工厂设计模式(抽象工厂模式)
- 操盘手教你抓涨停的办法
- 课程设计:基于C52单片机的循迹小车
- 4.19华为技术面+4.21华为主管面(已OC)
- CausalImpact
- input 框换背景色
- 计算机开机进不了bios,开机进不了bios,教您怎么解决win8开机进不了bios
- Genymotion目前速度最快的Android模拟器+ova包