| 
   
package com.guipei.listener; 
  
import java.util.Hashtable; 
import java.util.Iterator; 
  
import javax.servlet.http.HttpSession; 
import javax.servlet.http.HttpSessionEvent; 
import javax.servlet.http.HttpSessionListener; 
  
public class SessionListener implements HttpSessionListener { 
  
    // 集合对象,保存session 对象的引用 
    static Hashtable ht = new Hashtable(); 
  
    // 实现HttpSessionListener接口,完成session创建事件控制 
    public void sessionCreated(HttpSessionEvent arg0) { 
       HttpSession session = arg0.getSession(); 
       ht.put(session.getId(), session ); 
       System.out.println("create session :" + session.getId() ); 
    } 
  
    // 实现HttpSessionListener接口,完成session销毁事件控制 
public void sessionDestroyed(HttpSessionEvent arg0) { 
       HttpSession session = arg0.getSession(); 
       System.out.println("destory session :" + session.getId() ); 
       ht.remove(session.getId()); 
    } 
     
    // 返回全部session对象集合 
    static public Iterator getSet( ){ 
       return ht.values().iterator(); 
    } 
     
    // 依据session id返回指定的session对象 
    static public HttpSession getSession(String sessionId){ 
       return (HttpSession)ht.get(sessionId); 
    } 
} 
   |