利用java监听器实现在线人数统计

 更新时间:2015年09月28日 15:35:01   投稿:lijiao  
过去使用ASP和ASP.NET两种编程的时候,都写过在线人数统计能,实现功能挺简单的!今天使用java来实现在线人数统计有点另类,是通过Java监听器实现的,需要的朋友可以参考下

本文实例为大家分享了java监听器实现在线人数统计的具体代码,供大家参考,具体内容如下

1.在工程中创建监听类SessionListener 并且实现HttpSessionListener接口,代码如下

import javax.servlet.http.HttpSessionEvent;
 
import javax.servlet.http.HttpSessionListener;
 
public class SessionListener implements HttpSessionListener {
 private static int count = 0;
 
 public void sessionCreated(HttpSessionEvent se) {
 count++;
 System.out.println("session创建:" + new java.util.Date());
 }
 
 public void sessionDestroyed(HttpSessionEvent se) {
 count--;
 System.out.println("session销毁:" + new java.util.Date());
 }
 
 public static int getCount() {
 return count;
 }
}

2.配置web.xml

<listener>
 <description>session监听器</description> 
 <listener-class>com.xxx.SessionListener</listener-class>
</listener>

3.在JSP页面中显示在线人数

<%
 int count=com.xxx.SessionListener.getCount();
 out.println("在线人数:"+count);
%>

注意:servlet中对session的监听有很多接口,功能很灵活,最常用的是监听Session和Attribute。这里要澄清一下概念,servlet中的session监听和Attribute监听含义有差别,session监听指的不是我们一般所理解的放置一个session或者销毁一个session,这是Attribute监听的功能,因为servlet中放置session的语法是session.setAttribute(“session名”,要放入的对象)。而session监听,监听的是HTTP连接,只要有用户与server连接,就算连接的是一个空白的jsp页面,也会触发session事件,所以此处的session实际上指的是connection,用来统计当前在线用户数最合适了。

这种实现在线人数统计的方法是不是很特别,希望这篇文章对大家的学习有所帮助,有所启发。

相关文章

  • Spring BeanDefinition父子关系示例解析

    Spring BeanDefinition父子关系示例解析

    这篇文章主要为大家介绍了Spring BeanDefinition父子关系示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Java中使用正则表达式的一个简单例子及常用正则分享

    Java中使用正则表达式的一个简单例子及常用正则分享

    这篇文章主要介绍了Java中使用正则表达式的一个简单例子及常用正则分享,本文用一个验证Email的例子讲解JAVA中如何使用正则,并罗列了一些常用的正则表达式,需要的朋友可以参考下
    2015-06-06
  • Scala之Object的具体使用(小结)

    Scala之Object的具体使用(小结)

    这篇文章主要介绍了Scala之Object的具体使用(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • SpringBoot利用dag加速Spring beans初始化的方法示例

    SpringBoot利用dag加速Spring beans初始化的方法示例

    本文介绍了利用DAG加速SpringBoot中Spring beans初始化,先解释了DAG 概念及特性,包括节点入度出度、拓扑排序等,接着阐述加速Spring Bean初始化的实现思路,如识别依赖关系构建DAG、拓扑排序、并行初始化Bean及与Spring集成,还展示了相关代码工程、测试结果及引用
    2024-12-12
  • Java内存模型可见性问题相关解析

    Java内存模型可见性问题相关解析

    这篇文章主要介绍了Java内存模型可见性问题相关解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Maven Plugins报错的解决方法

    Maven Plugins报错的解决方法

    本文主要介绍了Maven Plugins报错的解决方法,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • 一篇文章带你入门Java变量及整形

    一篇文章带你入门Java变量及整形

    这篇文章主要介绍了简单了解JAVA变量类型及代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-08-08
  • Java Http的基础概念了解

    Java Http的基础概念了解

    这篇文章主要介绍了Java Http的基础概念,HTTP协议是建立在TCP协议之上的,这个程序是通过TCP编程来构建一个简单的Http服务器,需要的朋友可以参考下
    2023-04-04
  • idea2020.1设置多个spring boot的service启动的实现

    idea2020.1设置多个spring boot的service启动的实现

    这篇文章主要介绍了idea2020.1设置多个spring boot的service启动,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • Java Enum和String及int的相互转化示例

    Java Enum和String及int的相互转化示例

    这篇文章主要介绍了Java Enum和String及int的相互转化示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06

最新评论