zoukankan      html  css  js  c++  java
  • 解决同一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);
    	}
    

      

  • 相关阅读:
    MVC三层架构
    Cookie
    request (请求转发)
    response 重定向
    HttpServletResponse(响应),实现文件下载,实现验证码功能
    HTTP报文格式
    基于UUID生成短ID
    一致性hash应用到redis
    spring-mysqlclient开源了
    Effection Go
  • 原文地址:https://www.cnblogs.com/muffe/p/3522220.html
Copyright © 2011-2022 走看看