Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.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
如何在SpringMVC项目中将对象的实例作为会话属性?_Spring_Spring Mvc_Spring Annotations - Fatal编程技术网

如何在SpringMVC项目中将对象的实例作为会话属性?

如何在SpringMVC项目中将对象的实例作为会话属性?,spring,spring-mvc,spring-annotations,Spring,Spring Mvc,Spring Annotations,我正在开发一个SpringMVC应用程序,我有以下问题 我有一个RegistrazioneInfo类,它包含一些由用户插入表单的信息: public class RegistrazioneInfo { @NotNull @Size(min=16, max=16) private String codiceFiscale; String gRecaptchaResponse; public String getCodiceFiscale() {

我正在开发一个SpringMVC应用程序,我有以下问题

我有一个RegistrazioneInfo类,它包含一些由用户插入表单的信息:

public class RegistrazioneInfo {

    @NotNull
    @Size(min=16, max=16)
    private String codiceFiscale;

    String gRecaptchaResponse;

    public String getCodiceFiscale() {
        return codiceFiscale;
    }

    public void setCodiceFiscale(String codiceFiscale) {
        this.codiceFiscale = codiceFiscale;
    }

    public String getgRecaptchaResponse() {
        return gRecaptchaResponse;
    }

    public void setgRecaptchaResponse(String gRecaptchaResponse) {
        this.gRecaptchaResponse = gRecaptchaResponse;
    }


}
然后我有一个控制器类:

@Controller
public class RegistrazioneController extends BaseController {

    private RegistrazioneInfo registrazioneInfo;

    ...............................................
    ...............................................
    ...............................................
}
它包含一些处理对某些资源的请求的方法

好的,我的问题是,我想通过使用@SessionAttributesSpring注释,使用前面的registioneInfo类的实例作为会话属性,如下所示:

我的问题是,在上一个示例中,执行以下操作:

@SessionAttributes("pet")
public class EditPetForm {
    // ...
}
那么什么是宠物呢?我认为它类似于标识必须用作会话属性的对象的id或类似的东西。如何将我的注册信息的实例作为会话属性?

来自:

这通常会列出模型属性的名称,它们应该透明地存储在会话或一些会话存储中,用作表单支持bean。在类型级别声明,应用于带注释的处理程序类操作的模型属性

(重点是我的)


还请注意,如文档中所示,不应将其用于“非临时”元素。

@SessionAttributes在控制器类(@Controller)中声明,因此在类级别上也是如此。
Pet是一个持久存在于HttpSession中的Bean对象

,只需像平常一样将其放入会话即可。你不应该为此滥用
@SessionAttributes
@SessionAttributes
的目的是在请求单个控制器之间存储一个(或多个)对象,在会话的生命周期内不存储该对象。