`
115893520
  • 浏览: 142700 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

一个session监听器

阅读更多
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

public class SiteSessionListener implements HttpSessionListener {
	private static Map<String, HttpSession> sessions = new HashMap<String, HttpSession>();

	public void sessionCreated(HttpSessionEvent sessionEvent) {
		sessions.put(sessionEvent.getSession().getId(), sessionEvent.getSession());
	}

	public void sessionDestroyed(HttpSessionEvent sessionEvent) {
		sessions.remove(sessionEvent.getSession().getId());
	}

	public static HttpSession getSession(String sessionID){
		return sessions.get(sessionID);
	}
	
	public static void removeSession(String sessionID){
		if(sessions.containsKey(sessionID)) sessions.remove(sessionID);
	}
}

 

分享到:
评论

相关推荐

    JAVA SESSION监听器

    首先,我们需要了解如何定义一个Session监听器。在Java中,通过实现HttpSessionListener或HttpSessionAttributeListener接口来创建Session监听器。HttpSessionListener提供了对Session创建、销毁事件的监听,而...

    session监听小例子

    Session监听器是Servlet API提供的一种机制,允许开发者对Session的生命周期事件进行监听和处理,比如Session创建、更新、失效等。下面,我们将深入探讨Session监听及其在实际应用中的作用。 首先,我们需要了解...

    利用session监听器实现一个客户不能再两个客户端登录。

    这通常通过实现Session监听器来实现。本文将深入探讨如何利用Session监听器来防止同一用户在多个客户端同时登录。 首先,理解Session的基本概念至关重要。Session是服务器为每个用户创建的一种存储机制,用于保存...

    HTML.rar 内容是常用AJAX,SESSION监听器等内容

    HTML.rar 内容是常用AJAX,SESSION监听器等内容HTML.rar 内容是常用AJAX,SESSION监听器等内容HTML.rar 内容是常用AJAX,SESSION监听器等内容HTML.rar 内容是常用AJAX,SESSION监听器等内容HTML.rar 内容是常用AJAX...

    使用监听器跟踪session的生命周期和session的属性

    为了更好地理解和管理Session的生命周期及其属性,我们可以使用监听器(Listeners)来实现这一目标。以下是关于使用监听器跟踪Session生命周期和属性的详细解释。 1. **HttpSessionListener**: - `...

    j2ee实验二:学习使用Session和Cookie

    5. **开发一个Session监听器**:实现Session创建和销毁时的监听逻辑。 #### 实验环境搭建 为了顺利进行实验,需要准备以下硬件和软件环境: - **硬件配置**:至少配备2GHz以上的CPU、1GB以上的RAM和1GB可用硬盘...

    单用户登录监听器

    一个自己写的实现单用户登录,单点登录的监听器,一旦新用户登录将会销毁上一个登录用户的session 只需在设置session值之前调用一下重置登录这个方法 值得注意的就是,里面的判断得根据自己的项目中存的session的...

    javaweb监听session

    当我们需要在特定事件(如Session过期、用户登出等)发生时执行某些操作时,可以使用Session监听器。本文将详细介绍如何在Java Web项目中设置和使用Session监听器,以及如何根据Session ID获取Session。 首先,为了...

    Spring boot通过HttpSessionListener监听器统计在线人数的实现代码

    - 为了防止用户在同一个浏览器使用多个tab或窗口时导致在线人数统计重复计数,可以将用户唯一标识符(如session中的某个属性)存储到一个HashSet集合中。在`sessionDestroyed`方法中,可以从HashSet中移除对应的...

    判断session过期的方式

    以下是一个简单的Session监听器示例: ```java @WebListener public class SessionListener implements HttpSessionListener, HttpSessionAttributeListener { @Override public void sessionDestroyed...

    tomcat-redis-session.zip

    3. **集成Tomcat和Redis**:这通常涉及到在Tomcat的`context.xml`或`server.xml`配置文件中添加一个session监听器,如`org.apache.catalina.session.PersistentManager`,并配置其使用Redis作为session存储。...

    nginx+tomcat+redis完成session共享

    2. **集成Redis**:在Tomcat服务器上,我们需要配置一个Session监听器,例如`org.springframework.session.data.redis.RedisHttpSessionConfiguration`(如果你使用Spring Session),或者自定义监听器,当Session...

    用Redis存储Tomcat集群的Session

    - **配置Tomcat**:在每个Tomcat实例的`context.xml`文件中,配置一个Session监听器,如`org.apache.catalina.session.PersistentManager`,并设置其`managerClass`属性为支持Redis的实现,如`org.redisson....

    session中的bean监听

    属性监听和bean监听的区别: 属性监听:是对三个容器中的任何属性(包括对象和不是对象的数据,基本...从使用上它不同于前面两个监听器的学习,但给我们的感觉就是一个属性监听的vip用户,这个vip用户是一个JavaBean

    监听session的创建到销毁

    首先,我们需要了解Session监听器的基本概念。在Java Web应用中,监听器是一种Servlet API组件,它可以监听特定的事件并作出响应。对于Session监听,我们主要关注`HttpSessionListener`和`...

    session监听

    - **监听类编写**:为了实现session监听功能,我们需要编写一个类实现`HttpSessionListener`接口。在这个类中,需要重写两个方法: - `sessionCreated(HttpSessionEvent se)`:当一个新的session被创建时调用此方法...

    .net C# 通过session控制重复登录及在线用户统计

    当用户成功登录后,通常会将用户的一些关键信息(如ID、用户名等)存储到`Session`中,创建一个与用户会话相关的唯一标识。每当用户尝试再次登录时,系统首先检查`Session`中是否存在当前用户的标识。如果存在,...

    day18 监听器 统计在线人数,定时销毁超时session,钝化活化session,在线列表显示和踢人功能防止用户自动登录,在线支付

    在IT行业中,监听器(Listener)是Java Web开发中的一个重要概念,主要用于监控应用程序或服务器的特定事件。在本主题“day18 监听器”中,我们将探讨如何利用监听器来统计在线人数、定时销毁超时session、实现...

    解决Spring session(redis存储方式)监听导致创建大量redisMessageListenerContailner-X线程问题

    这种情况往往发生在客户端频繁地触发会话变化或更新时,会话的监听器会不断产生消息并由消息监听容器处理。如果默认的线程池配置不当,就容易造成线程资源的过度消耗,甚至导致系统资源耗尽。 这个问题的核心是...

    java监听器和过滤器详解

    - **Session监听器**:例如`HttpSessionBindingListener`,用来监听对象与`session`之间的绑定与解绑操作;`HttpSessionActivationListener`用于监听`session`的序列化与反序列化操作,但一般情况下,这些操作是由...

Global site tag (gtag.js) - Google Analytics