项目提出优化需求:从详情页面返回列表页面的时候,自动填充最近一次的查询条件。
我把每次查询的条件封装成对象,存储在session中,当从详情页返回列表页的时候,从session中获取最近一次的查询条件。
现在遇到了很奇怪的问题:从列表页跳转到详情页时,发现两次的session不一致(sessionId不一样)。我是通过springMvc的request.getSession()方法获取session。
请问,有没有对springMvc了解的朋友遇到过类似的问题?这种session不一致是什么原因导致的?SpringMvc中该如何持久保存数据(类似这种session机制)?
找资料好几天了,一直没解决。请知道的朋友帮忙解决下,万分感谢。
1 //查看合同列表 2 @RequestMapping(value="/goContractList",method=RequestMethod.GET) 3 public String goContractList(HttpServletRequest request,HttpServletResponse response,ModelMap model) throws Exception{ 4 System.out.println(request.getSession().getId()); 5 //其余代码略 6 } 7 8 //查看合同明细 9 @RequestMapping(value="/viewContract",method=RequestMethod.GET) 10 public ModelAndView viewContract(HttpServletRequest request,HttpServletResponse response) throws Exception{ 11 //这里的sessionId与第一次的sessionId不一样,且之前session中存储的数据都不存在了 12 System.out.println(request.getSession().getId()); 13 //其余代码略 14 }
Spring MVC有专门的session api,你可以查查
完全一样的情况,请问楼主解决了么
请问楼主这个问题解决了吗?
我遇到了相似的问题。似乎是应为在第一次请求的时候有耗时的操作?
https://stackoverflow.com/questions/50382944/session-setattribute-no-effect
让客户端那边记录第一次的sessionid,然后第二次携带sessionid来访问