有没有人知道 凌云论坛 在线超时就退出的问题 凌云论坛 在线一段时间就会自动退出,有没有人知道这个时间是怎么控制的,在哪控制的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 session的有效期,默认半小时貌似 session 监听器HttpSessionListenerpackage Servlet;import javax.servlet.http.HttpSessionAttributeListener;import javax.servlet.http.HttpSessionBindingEvent;import javax.servlet.http.*;import java.util.*;public class SessionListener implements HttpSessionListener{ private static HashMap hUserName = new HashMap();//保存sessionID和username的映射 /**以下是实现HttpSessionListener中的方法**/ public void sessionCreated(HttpSessionEvent se){ } public void sessionDestroyed(HttpSessionEvent se){ hUserName.remove( se.getSession().getId() ); } /* * isAlreadyEnter-用于判断用户是否已经登录以及相应的处理方法 * @param sUserName String-登录的用户名称 * @return boolean-该用户是否已经登录过的标志 */ public static boolean isAlreadyEnter(HttpSession session,String sUserName){ boolean flag = false; if(hUserName.containsValue(sUserName)){//如果该用户已经登录过,则使上次登录的用户掉线(依据使用户名是否在hUserName中) flag = true; int i=0; //遍历原来的hUserName,删除原用户名对应的sessionID(即删除原来的sessionID和username) Iterator iter = hUserName.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry)iter.next(); Object key = entry.getKey(); Object val = entry.getValue(); i++; if( ( (String)val ).equals(sUserName) ){ hUserName.remove(key); } } session.setAttribute("ii", i); hUserName.put( session.getId(),sUserName );//添加现在的sessionID和username System.out.println("hUserName = " + hUserName); } else{//如果该用户没登录过,直接添加现在的sessionID和username flag = false; hUserName.put( session.getId(),sUserName ); System.out.println("hUserName = " + hUserName); } return flag; } 弄了很久都不知道哪里出问题了,编程菜鸟,求高手指导!程序是实现用JSP猜0~9数字游戏 新手请教一个Servlet程序 这两个获取的值是否一样? form.style.display="none" 关于 未明确定义列! 如何复制一个Jar包中的某个文件? 求助! 在java应用程序中,如何捕捉servlet的输出?? 两个问题,请大家指教..都是WEBLOGIC和SQL SERVER的问题 Help me!!(急) Hibernate中List集合的问题 ajax+dtree 动态加载
package Servlet;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.*;
import java.util.*;public class SessionListener implements HttpSessionListener
{
private static HashMap hUserName = new HashMap();//保存sessionID和username的映射
/**以下是实现HttpSessionListener中的方法**/
public void sessionCreated(HttpSessionEvent se){
}
public void sessionDestroyed(HttpSessionEvent se){
hUserName.remove( se.getSession().getId() );
}
/*
* isAlreadyEnter-用于判断用户是否已经登录以及相应的处理方法
* @param sUserName String-登录的用户名称
* @return boolean-该用户是否已经登录过的标志
*/
public static boolean isAlreadyEnter(HttpSession session,String sUserName){
boolean flag = false;
if(hUserName.containsValue(sUserName)){//如果该用户已经登录过,则使上次登录的用户掉线(依据使用户名是否在hUserName中)
flag = true;
int i=0;
//遍历原来的hUserName,删除原用户名对应的sessionID(即删除原来的sessionID和username)
Iterator iter = hUserName.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry)iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
i++;
if( ( (String)val ).equals(sUserName) ){
hUserName.remove(key);
}
}
session.setAttribute("ii", i);
hUserName.put( session.getId(),sUserName );//添加现在的sessionID和username
System.out.println("hUserName = " + hUserName);
}
else{//如果该用户没登录过,直接添加现在的sessionID和username
flag = false;
hUserName.put( session.getId(),sUserName );
System.out.println("hUserName = " + hUserName);
}
return flag;
}