如何在spring mvc中删除session属性

A S*_*Sdi 2 java spring spring-mvc

我正在尝试部署 Spring mvc 应用程序。我有类似向导的表单,由用户填写,我通过利用会话保留向导中每个表单的内容,直到最后一页,然后用户确认并保存内容。然后控制器重定向到另一个页面。但这里我有一个包含所有先前会话属性的表单,所有这些属性都以表单形式呈现。我的问题是有什么方法可以在重定向到另一个页面之前从控制器中删除所有会话属性评论页面控制器:

@RequestMapping("/review")
    public String review(@ModelAttribute Resource resource){
        // do somthing
        return "course_review";
    }
Run Code Online (Sandbox Code Playgroud)

并保存航向控制器

@RequestMapping("/save")
public String save(@ModelAttribute Resource resource) {
    // do somthing
    return "redirect:/course/add";
}
Run Code Online (Sandbox Code Playgroud)

并保存控制器重定向到/course/add其控制

@RequestMapping("/add")
    public String add(Model model) {
        //do somthing
        return "course_add";
    }
Run Code Online (Sandbox Code Playgroud)

Controller 类注释为

@Controller
@RequestMapping("/course")
@SessionAttributes("course")
Run Code Online (Sandbox Code Playgroud)

请指教。

Abd*_*han 6

看看SessionStatus助手类。

来自docs

...一旦处理程序指示其对话会话完成,属性将被删除。

@RequestMapping("/save")
public String save(@ModelAttribute Resource resource, SessionStatus status) {
    status.setComplete();
}
Run Code Online (Sandbox Code Playgroud)