有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java创建唯一会话id ServletRequestAttributes

当请求同时来自同一台计算机时,创建唯一会话id存在问题

我正在尝试创建一个唯一的会话id,如下所示:

HttpSession session = servletRequest.getServletRequest().getSession();
sessionId = session.getId();
String ipAddr = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
          .getRequest()
          .getRemoteAddr();
sessionId = sessionId.concat("_" + ipAddr + "_" + System.nanoTime() + "");

但是在这里,如果一个用户试图使用同一台机器同时连接到多个会话,那么会话id不会保持唯一,有人能告诉我如何处理IP和nanotime相同但我仍然需要唯一会话id的情况吗


共 (0) 个答案