维护页面之间的模型数据(Spring 3 MVC)

Tus*_*har 6 spring spring-mvc

我在Spring中有一个添加联系人进程,它将跨越多个页面,First Pages将采用文本输入,第二个页面将采取图像输入,第三个采用显示草稿.

第一页

@RequestMapping("/addContact")
public String registerContact(@ModelAttribute Contact contact) {
 return "addContact";
}
@RequestMapping("/addContact")
Run Code Online (Sandbox Code Playgroud)

第二页

@RequestMapping("/addImages")
public String registerImages(@Valid Contact contact, BindingResult result) {
 return "addImages";
}
Run Code Online (Sandbox Code Playgroud)

如何在页面之间维护联系人模型数据,以便我可以选择让用户在页面之间移动和泡沫?

M. *_*num 14

如果您有一个控制器处理所有页面,您可以使用它@SessionAttributes来存储Contact会话中的请求之间.在最后一页使用SessionStatus后标记使用@SessionAttribtues完成(用于清理).

@Controller
@SessionAttributes("contact")
public AddContactController {

    @ModelAttribute
    public Contact contact() {
        return new Contact();
    }

    @RequestMapping("/addContact")
    public String registerContact(@ModelAttribute Contact contact) {
        return "addContact";
    }

    @RequestMapping("/addImages")
    public String registerImages(@Valid @ModelAttribute Contact contact, BindingResult result) {
        return "addImages";
    }

    @RequestMapping("/save")    
    public String firstPage(@ModelAttribute Contact contact, SessionStatus status) {
      status.complete();
    }
}
Run Code Online (Sandbox Code Playgroud)