我使用购物车购物bean(scope = session)创建了一个Spring MVC项目,并将Client对象设置为:
@SessionAttributes(value="client")
如果我想要消除会话中存在的所有内容,则此代码不起作用。为什么呢?
@RequestMapping(value="/logout",method=RequestMethod.GET)
public String closeSession(SessionStatus status){
status.setComplete();
return "redirect:/";
}//closeSessione
它只删除了Client对象,但如果我想删除Cart bean,我该如何解决?
我最好用scope = session创建Client bean,还是@SessionAttributes(value="client")
也好?
答案 0 :(得分:1)
首先,你应该使用@SessionAttributes,在这里你会找到一些比较:Spring: Understanding on difference between @SessionAttributes vs @Scope('session')
尝试执行此操作以删除会话的所有对象。
@RequestMapping(value="/logout",method=RequestMethod.GET)
public String closeSession(HttpServletRequest request){
HttpSession session=request.getSession();
session.invalidate();
return "redirect:/";
}//closeSessione