【问题标题】:How to set request parameter to be avaiable within a session if the session is reset for some other reason如果会话因其他原因被重置,如何将请求参数设置为在会话中可用
【发布时间】:2012-04-16 22:22:51
【问题描述】:
String reqParam=request.getParameter("param");

    if(reqParam!=null){
          HttpSession session=request.getSession(false);
          if(session!=null){
            session.setAttribute("reqParamInSession", reqParam);
          }
    }

当调用doFilter 方法时,我使用上面的代码将请求参数值设置到会话中。但是当用户导航到不同的体验时(假设管理商店的三个不同分店的用户将对每个分店有不同的体验),除了用户配置文件之外,会话将被清除。当用户体验发生变化时,我不管理重置会话的模块。但是即使用户改变了体验,我仍然需要我在会话中设置的参数。

有没有办法将参数与发送的每个请求相关联,而不管会话是否被更改?或者任何其他方式来处理这个?

【问题讨论】:

  • 您是否考虑在应用程序范围内存储值?

标签: java session servlets


【解决方案1】:

不要使用应用程序范围,就好像会话因任何原因而关闭一样,参数不会被清除。如果可以,请使用 cookie。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-20
    • 1970-01-01
    • 2019-08-24
    • 1970-01-01
    • 2021-05-30
    相关资源
    最近更新 更多