Java 如何在我的spring控制器中维护页面范围?
我在同一页上有表单和结果表。此页由单个@Controller支持 当用户访问页面(GET)时,我将属性存储在会话范围中,以便它们在表单提交后可用(我在POST时重新加载页面) 当用户离开此页面时,我需要以某种方式删除会话范围的属性Java 如何在我的spring控制器中维护页面范围?,java,spring-mvc,session-variables,Java,Spring Mvc,Session Variables,我在同一页上有表单和结果表。此页由单个@Controller支持 当用户访问页面(GET)时,我将属性存储在会话范围中,以便它们在表单提交后可用(我在POST时重新加载页面) 当用户离开此页面时,我需要以某种方式删除会话范围的属性 Spring3MVC中是否有方法处理离开我的页面的请求?如果只是POST,那么您不需要将它们存储在会话中。 您可以在get方法model.addAttribute(“bean”,BeanClass)中设置模型 然后,当您发布页面时,您将拥有该bean类: > p
Spring3MVC中是否有方法处理离开我的页面的请求?如果只是POST,那么您不需要将它们存储在会话中。 您可以在get方法
model.addAttribute(“bean”,BeanClass)中设置模型代码>
然后,当您发布页面时,您将拥有该bean类:
> public String postMethod(@ModelAttribute("bean") BeanClass
> bean, BindingResult result, Model model, HttpServletRequest request)
> throws Exception {
> //...
> }
您可以使用@scope
注释将您的范围赋予控制器
@Controller(value="mycontroller")
@Scope("session")
@RequestMapping("/hello")
public class HelloController
{
int count = 0;
public ModelAndView printHello(HttpServletRequest request) {
count++;
ModelAndView mymodelview = new ModelAndView("success");
mymodelview.addObject(`enter code here`"count", count);
}
}
如果作用域是request(@scope(“request”)
),则每当count的值为1时,如果作用域是session,则对于特定会话,count值将增加1