[英]Set session variable spring mvc 3
如何使用${variable}
或${requestScope.variable}
设置我可以在任何视图中使用的会话对象
为了能够使用会话,我需要设置<%@ page session="true" %>
吗?
如果要在视图中访问会话变量,最简单的方法是:
${sessionScope.yourVariable}
有关详细信息,请参阅使用范围对象 。
如果设置<%@ page session="true">
则JSP会将会话范围和页面范围合并到单个命名空间中。 然后你可以这样做:
${yourVariable}
您可以在mvc控制器中将某些内容放入会话中,如下所示:
@RequestMapping("/test")
@Controller
public class TestController {
@RequestMapping(method = RequestMethod.GET)
public String testMestod(HttpServletRequest request)
{
request.getSession().setAttribute("testVariable", "Test Values!!");
return "testJsp";
}
}
最后,@ SessionAttribute用于特定用例,并且不会将变量放入会话中,以便任何人都可以访问它们:
以下是春天人们如何描述@SessionAttribute的功能:
@SessionAttributes的工作方式与SimpleFormController的sessionForm相同。 它将命令(或@SessionAttributes任何对象)放在会话中,持续时间为第一个和最后一个请求(大多数时间是初始GET和最终POST)。 之后,东西被删除。
每个Controller都有自己的ModelMap,因此在controller1中作为@SessionAttributes放置的内容在controller2中不可用,反之亦然。 为此,你必须自己手动将东西放在会话上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.