Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Session 如何改变spring会话/请求范围bean的状态?_Session_Spring Mvc_Scope_Request - Fatal编程技术网

Session 如何改变spring会话/请求范围bean的状态?

Session 如何改变spring会话/请求范围bean的状态?,session,spring-mvc,scope,request,Session,Spring Mvc,Scope,Request,我真的很喜欢在SpringMVC应用程序中使用SpringStereotype注释的bean,并且希望充分使用SpringScope注释。不再需要在HttpServletRequest或它的会话中闲逛。 有一件事我还不太清楚,也许有人能给我一些关于如何处理这件事的见解或解释。我有一个缓存实现了一个单例Springbean。它缓存若干特定类型的对象“Foo”。Foo通过注释定义为会话范围的bean。预期的行为是每个新会话都有自己的“Foo”实例。如何将其中一个cahced“foo”实例的状态移动到

我真的很喜欢在SpringMVC应用程序中使用SpringStereotype注释的bean,并且希望充分使用SpringScope注释。不再需要在HttpServletRequest或它的会话中闲逛。 有一件事我还不太清楚,也许有人能给我一些关于如何处理这件事的见解或解释。我有一个缓存实现了一个单例Springbean。它缓存若干特定类型的对象“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;

}

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