【发布时间】: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