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

时间:2023-03-10 07:25:42
解决同一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);
}