我有一个独特的情况,我想通过POST将一个整数数组存储到内存中。我想稍后想用GET请求获取这些数据。
这看起来很奇怪,很奇怪,但我确实有一个用例,它只会在内存中停留几秒钟。
一个简单的例子 - 存储数组someArray = [1,2,3];在某种内存存储器中使用POST,并在另一个函数中通过GET检索它。
答案 0 :(得分:2)
由于您可以在控制器中访问HttpServletRequest
,因此您只需调用getSession
方法:
HttpSession session = request.getSession(false);
现在您可以访问Session,因此您可以使用相关方法存储,检索和删除数据:
如评论中所述,您还可以省略手动获取会话,并将其作为参数从@Controller
发送到您的方法。取自this answer
@RequestMapping...)
public String processSubmit(..., HttpSession session, ...) {
Object anAttribute = session.getAttribute("anAttribute");
}
答案 1 :(得分:-1)
我曾经有过这样的要求,首先将主要数据发布到控制器,然后将一些详细数据发布到控制器,并将这些数据与来自数据库的2种数据和检索数据相结合。我只是将主要数据存储在session.setAttribute()
的会话中,Spring mvc有一个@SessionAttribute
,但经过几十次尝试后,我放弃了,使用起来非常困难。