2013-03-27 56 views
0

我有一個獨特的情況,我想通過POST將整數數組存儲到內存中。我想以後用GET請求獲取這些數據。如何在spring mvc中的會話內存中存儲信息以便稍後獲取?

這似乎很奇怪,和怪異,但我有一個用例,它只會在存儲幾秒鐘。

一個簡單的例子 - 存儲陣列的someArray = [1,2,3];在某些內存中使用POST,並在另一個函數中通過GET檢索它。

回答

2

既然你將在你的控制器訪問HttpServletRequest,你只需要調用getSession方法:

HttpSession session = request.getSession(false); 

現在你可以訪問會話,這樣你就可以存儲,檢索和利用它刪除數據相關的方法:


正如評論所說,你也可以省略手動獲取會話,並從你的@Controller把它作爲參數傳遞給你的方法。在Spring控制器不需要做這從this answer

@RequestMapping...) 
public String processSubmit(..., HttpSession session, ...) { 
    Object anAttribute = session.getAttribute("anAttribute"); 
} 
+1

拍攝,只是把HttpSession中作爲方法的參數,並直接使用它。 – OQJF 2013-03-27 02:11:17

+0

感謝球員們,實際上我只是被告知我們的集羣會隨機擦除會話內存,所以我認爲我將不得不重新整個解決方案 – user1500053 2013-03-27 02:22:37

-1

我曾經有過這樣的要求,即先貼主數據控制器,然後發佈一些詳細的數據,控制器和合並2張類型的數據和數據庫,這些數據檢索的數據。我只是存儲主數據會話與session.setAttribute(),Spring MVC的有一個@SessionAttribute,但經過嘗試幾十個的時候,我放棄了,這是非常difficlut使用。

相關問題