解决同一PC同一浏览器session共享问题

首先session是同一PC同一浏览器共享的.比如如下代码:

public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{ 
		HttpSession hs = request.getSession(); 
                
                //存入session
		String user = request.getParameter("user"); 
		hs.setAttribute("user", user);
		response.sendRedirect("wel.jsp");
	}

  如果同时在同一PC同一浏览器登录系统,那么session["user"]的值会被第二次改写。那怎么解决呢?

      解决办法:只需要在session中存的key不同就可以,然后通过request传递key即可。如下:

public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException
	{ 
		HttpSession hs = request.getSession();                   
		String user = request.getParameter("user"); 

         //存入session,以用户名作为key,避免重写
		hs.setAttribute(user, user);
          //以后request参数传递给下个页面,以便调用对应session
		response.sendRedirect("wel.jsp?user="+user);
	}

  

原文地址:https://www.cnblogs.com/muffe/p/3522220.html