搞JSP也有不少时间了,今天碰到个不大不小的问题,困扰了我半个多小时,虽然也不算长,但是自己感觉相当恶心!
其实问题并不难,就是一个JSP页面转发的问题,当在servlet中调用response.sendRedirect("xxx.jsp");时由于前面用到session中的变量,在xxx.jsp页面中会解析这个变量,但是当我修改此变量再次转发至此xxx.jsp页面时,问题出现了,此时返回的jsp页面是原来第一次解析的,也就是说相当于静态的页面.
于是仔细回想了一下jsp页面解析的流程,发现再同一次会话中同一个jsp页面只会解析一次,于是就无法更新显示了.
要解决这个问题,其实很简单,在重定向时response.sendRedirect("xxx.jsp?"+Math.random());使每次的url不同就OK了.