设置会话可变弹簧 mvc 3
2022-09-03 04:31:28
如何设置会话对象,然后通过使用或${variable}
${requestScope.variable}
为了能够使用会话,我需要设置吗?<%@ page session="true" %>
如何设置会话对象,然后通过使用或${variable}
${requestScope.variable}
为了能够使用会话,我需要设置吗?<%@ page session="true" %>
如果要在视图中访问会话变量,最简单的方法是:
${sessionScope.yourVariable}
有关详细信息,请参阅使用作用域对象。
如果设置,则 JSP 会将会话作用域和页面作用域合并到单个命名空间中。然后你可以做:<%@ page session="true">
${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)。之后,这些东西被删除了。
每个控制器都有自己的模型映射,因此在控制器1中作为@SessionAttributes的东西在控制器2中不可用,反之亦然。为此,您必须自己手动将内容放在会话中。