您的位置:首页 > 其它

一个用户只能在一部机里登陆一次

2007-12-14 21:52 281 查看
问题是:
如何在jsp中实现一个用户只能在一部机里登陆一次,就是说,同样的ID和密码只能在一部机里有用,当用户在用这个帐号的时候,其他人就不可以用了!
1、登录的时候在物理表中存上该人的帐号和他的sessionid ;然后用session监听器监听;用户登出或者session timeout的时候根据sessionid删除该物理表中的记录

import javax.servlet.*;
import java.util.*;
import javax.servlet.http.*;

public final class Test1
implements HttpSessionListener {

public void sessionCreated(HttpSessionEvent event) {

}

public void sessionDestroyed(HttpSessionEvent event) {

HttpSession session = event.getSession();
String sessionId = session.getId();
remove(sessionId);
}

public void remove(String id){
String sqlx = "delete from loginStatus where id='"+id+"'";
/*
execute sql
*/
}
}

2、解决方法二

在你用户表里多加一列 登录后为1 没登录为0
在注销 或 session无效 更新该列的值为0
这样 用户就只能登录一次
但是用户可以在不同的电脑上登录
我不知道这个办法有没有上面那位说的好 不过可以试试

ParentId ChildIndex ClassId FullName Name Extended
P 1 P_1 >-计算机 计算机 0


来自网络
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: