[英]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.