java web 项目实现一个账号只能在一个终端登录

伪代码 

//获取当前系统所有的信息
		Map onlineUserList=(Map)request.getSession().getServletContext().getAttribute("ONLINE_USERS");
		if(onlineUserList==null){
			onlineUserList=new LinkedHashMap();
		}
		//如果当前用户存在其他session信息。那么就让旧的session失效
		HttpSession oldSession=onlineUserList.get(login.getUser().getUserId());
        if(oldSession!=null){
        	oldSession.invalidate();
        }
        //记录新的session,并记录到所有用户下
        onlineUserList.put(login.getUser().getUserId(), request.getSession());
		request.getSession().getServletContext().setAttribute("ONLINE_USERS",onlineUserList);

 

 

你可能感兴趣的:(登录)