package listeners;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import java.util.*;
public class sessionListner implements HttpSessionListener {
public static ArrayList userList;
public static ArrayList valueList;
public static ArrayList IDList;
public void sessionCreated(HttpSessionEvent se){
}
public static void createsession(HttpSessionEvent se ) {
String username=(String)se.getSession().getAttribute("userName");
// String valuename=(String)se.getSession().getValue("userName");
// String idname=(String)se.getSession().getId();
/*
Enumeration e=se.getSession().getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
//HttpServletRequest.getHeader(String)系统定义函数。
//把名字为String的头信息的内容拿出来
System.out.println(name);
}
*/
System.out.println("-------------start------------");
for(int i=0;i<userList.size();i++){
String tmp=(String)userList.get(i);
if(tmp.equals(username))
{
System.out.println("@@@@@user@@@@ already in use:"+username);
}
System.out.println((String)userList.get(i));
}
System.out.println("-------------end------------");
userList.add(se.getSession().getAttribute("userName"));
// userList.add(se.getSession().getValue("userName"));
// IDList.add(se.getSession().getId());
System.out.println("add+:"+username);
// System.out.println("value add+:"+valuename);
// System.out.println("id add+:"+valuename);
}
/* Session失效事件 */
public void sessionDestroyed(HttpSessionEvent se){
String username=(String)se.getSession().getAttribute("userName");
// String valuename=(String)se.getSession().getValue("userName");
// String idname=(String)se.getSession().getId();
userList.remove(se.getSession().getAttribute("userName"));
// userList.remove(se.getSession().getValue("userName"));
// IDList.remove(se.getSession().getId());
System.out.println("remove+:"+username);
// System.out.println("value remove+:"+valuename);
// System.out.println("id remove+:"+idname);
}
public sessionListner(){
System.out.println("init");
userList=new ArrayList();
}
}