【问题标题】:How to alter the state of spring session/request scoped beans?如何更改春季会话/请求范围 bean 的状态?
【发布时间】:2010-10-30 15:55:16
【问题描述】:

我真的很喜欢在 Spring MVC 应用程序中使用带有 Spring 原型注解的 bean,并且希望完全扩展使用 Spring 范围注解。不再需要在 HttpServletRequest 或它的会话中摆弄。 有一件事对我来说并不是很清楚,也许有人可以为我提供一些关于如何处理这个问题的见解或解释。我有一个缓存实现了一个单例spring bean。它缓存了特定类型“Foo”的多个对象。 Foo 通过注解定义为会话范围的 bean。预期的行为是每个新会话都有它自己的 "Foo" 实例。如何将 cahced“foo”实例之一的状态移动到会话范围的 Foo(复制、克隆或简单分配)?我想实现将 Foo 实例从缓存存储到 HttpSession 中可用的会话中的相同行为,但这是通过 Spring 会话范围对象实现的。目标是删除移动到 HttpSession 并从 HttpSession 检索的所有样板代码。

我如何定义 Foo 的示例:

@Component
@Scope(value="session",proxyMode=ScopedProxyMode.TARGET_CLASS)
public class Foo extends BaseEntity { 
    //Some stuff done here
    private Long id;

}

【问题讨论】:

    标签: session spring-mvc scope request


    【解决方案1】:

    好的,所以我通过声明一个会话 bean 解决了这个问题,我在其中存储了从缓存中选择的元素...。这其实很容易解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-29
      • 2011-01-25
      • 2018-03-06
      • 1970-01-01
      • 2016-08-05
      • 2015-02-23
      • 1970-01-01
      • 2012-05-26
      相关资源
      最近更新 更多