sessionmonitor.java

来自「开源项目CRM之OpenCustomer」· Java 代码 · 共 73 行

JAVA
73
字号
package org.opencustomer.web.util;

import java.util.HashSet;
import java.util.Set;

import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionBindingListener;

import org.apache.log4j.Logger;

public class SessionMonitor implements HttpSessionBindingListener
{
    private static final Logger log = Logger.getLogger(SessionMonitor.class);

    private static HashSet<HttpSession> sessions = new HashSet<HttpSession>();

    private long login;

    private long lastAccess;

    public SessionMonitor()
    {
    }

    public SessionMonitor(long login)
    {
        this.login = login;
        this.lastAccess = login;
    }

    public void valueBound(HttpSessionBindingEvent event)
    {
        sessions.add(event.getSession());

        if (log.isDebugEnabled())
            log.debug("session added ... active sessions: " + sessions.size());
    }

    public void valueUnbound(HttpSessionBindingEvent event)
    {
        sessions.remove(event.getSession());

        if (log.isDebugEnabled())
            log.debug("session remove ... active sessions: " + sessions.size());
    }

    public static Set<HttpSession> getSessions()
    {
        return sessions;
    }

    public long getLastAccess()
    {
        return lastAccess;
    }

    public void setLastAccess(long lastAccess)
    {
        this.lastAccess = lastAccess;
    }

    public long getLogin()
    {
        return login;
    }

    public void setLogin(long login)
    {
        this.login = login;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?