【问题标题】:Significance of request.getSession() and request.getSession(boolean createNew)request.getSession() 和 request.getSession(boolean createNew) 的意义
【发布时间】:2012-05-15 17:54:57
【问题描述】:

在 Servlet 中使用 HttpServletRequest.getSession() 方法时,我意识到 Servlet API 的官方文档指出,如果当前会话已过期或已失效,HttpServletRequest.getSession() 会返回一个新的会话对象。

此外,HttpServletRequest.getSession(boolean createNew)createNew 为真且前一个会话不再存在时返回一个新会话。

通常,IMO 在设计 API 时,会将这些方法设计为 HttpServletRequest.getSession(true) 如果前一个会话无效则创建一个新会话,HttpServletRequest.getSession() 如果存在则返回现有会话,否则返回 null。

API 的这种显着差异是否有任何具体原因?

【问题讨论】:

    标签: java http servlets


    【解决方案1】:

    应用程序更有可能需要当前会​​话或创建一个新会话,而不是仅当当前会话存在时。因此,Servlet EG 选择的 API 就是这样编写的。

    【讨论】:

      猜你喜欢
      • 2015-09-07
      • 2012-12-07
      • 2015-06-23
      • 1970-01-01
      • 2011-09-07
      • 2016-12-12
      • 2011-08-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多