代码之家  ›  专栏  ›  技术社区  ›  Buhake Sindi Tesnep

HTTP会话管理/替代会话管理(在爪哇)

  •  2
  • Buhake Sindi Tesnep  · 技术社区  · 14 年前

    我会尽力解释我在做什么 最好的 可能的建议/解决方案。这都是用Java完成的。

    我的客户机有一个基于Swing的桌面应用程序,可以使用WebStart进行加载。我被指派为用户帐户信息创建会话管理器。

    我的朋友建议使用HTTP会话管理,所以我决定尝试一下。我已经编写了一个servlet(我们称之为sessionservlet),它可以根据用户配置文件创建、删除和重新分配会话。在Tomcat 7中,不会存储会话。我怀疑当servlet初始化时,会话被清空。我只得到, org.apache.catalina.ASYNC_SUPPORTED 在会议中。

    我的问题是:

    • 如何允许Tomcat7进行会话管理?
    • 如何在Spring3中进行会话管理?我在Spring上运行了大多数服务,我认为在Spring上进行会话管理已经足够明智了。
    • 还有什么其他方式来做Java会话管理,有一种会话管理的设计模式吗?(只是好奇)。

    非常感谢!

    2 回复  |  直到 14 年前
        1
  •  2
  •   Jaydee    14 年前

    我可能误解了您试图对会话做什么,但会话(就servlet而言)仅在用户访问站点时存在。所以用户得到第一个页面,并建立了一个会话,并且可以访问用户访问的每个页面。当用户离开站点时,会话将消失。这是你在寻找的行为,还是你在寻找在访问网站之间会持续存在的东西?

        2
  •  2
  •   Buhake Sindi Tesnep    14 年前

    我已经知道了,所以我会分享我的意见。

    在进行HTTP会话管理(尤其是servlet)时,必须确保客户端会话管理也存在。

    当创建会话时,servlet返回一个cookie, JSESSIONID servlet容器创建的会话的值。确保客户端能够存储会话并在每次需要从服务器访问会话数据时使用它。

    我没有从我这边存储cookie,所以看起来会话好像从未创建过。

    希望这能帮助别人。