【问题标题】:Utilize session bean or store a custom object in session?在会话中使用会话 bean 或存储自定义对象?
【发布时间】:2012-01-16 21:43:00
【问题描述】:

我对以下内容感到困惑:
我可以在 httpsession 对象中存储一个自定义对象供以后使用。
以后的使用我的意思是在同一会话期间由各种 servlet/过滤器使用。

或者我可以使用 Spring session bean。

我想知道(将其他参数放在一边)使用 Spring 的 session bean 是否会获得任何优势?

我没有看到一些重要性差异。

【问题讨论】:

  • @Beau:说得好。我将不得不解决这个问题。但请注意,我会尽可能多地投票

标签: java spring jakarta-ee tomcat


【解决方案1】:

您可以在会话 bean 中注入其他 bean。

如果它是一个简单的价值持有者,它并没有太大的区别。但是,如果您想对这些值进行操作(通过调用服务),那么将其作为 spring bean 是有益的。

另一个优点是您的代码不依赖于 servlet API。而且更容易测试。

【讨论】:

    【解决方案2】:

    您可以将会话范围的 Spring bean 直接注入其他 bean,甚至是任何应用层(服务,甚至 DAO)中的单例。

    Spring 具有包装 bean 并始终路由到适当对象的魔力。如果没有会话范围的 bean,您注定要直接与 HTTP 会话进行交互。这也使测试变得更加困难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-12
      • 2017-08-25
      • 2013-08-02
      • 2015-02-20
      • 2017-12-06
      相关资源
      最近更新 更多