【问题标题】:Spring 3.5 Session Bean LifecycleSpring 3.5 会话 Bean 生命周期
【发布时间】:2011-04-04 16:02:01
【问题描述】:

是什么触发了 Spring 的 Session Bean 存在于容器中,又是什么将其移除?基本上,我想了解 Web 流对 Session Bean 的影响。

【问题讨论】:

  • 代码库中没有 HttpSessionListener 所以我删除了错误的答案。

标签: spring session javabeans


【解决方案1】:

当您第一次尝试从视图访问会话 bean 或者您想要访问依赖于它的 bean 时,会创建会话 bean。它存储在 HTTP session 中,因此当 session 过期或被显式销毁时将其删除 - 这部分由 servlet 容器而不是 spring 管理。

【讨论】:

  • Hmm.. 要在 Spring 3.5 中显式销毁会话,我是否只需调用一个注解为 @PreDestroy 的方法,Servlet 容器将依次删除我的会话?
  • 要销毁 HTTP 会话,您需要使用 servlet API,而不是 Spring API。我相信你可以这样做:HttpSession session = request.getSession(false); if (session != null) { session.invalidate();通常您不会手动执行此操作。我建议使用 Spring 安全性,您可以在其中配置注销过滤器以在用户注销时执行此操作。会话到期时也会自动发生。
猜你喜欢
  • 2017-06-29
  • 1970-01-01
  • 1970-01-01
  • 2017-06-23
  • 1970-01-01
  • 2014-12-04
  • 2011-08-21
  • 2016-11-21
  • 2014-08-03
相关资源
最近更新 更多