日期:2014-05-19  浏览次数:20626 次

关于session.getAttribute的问题
关于session的问题接力
我在A.jsp页面中在session中加入了一个属性ssesion.setAttribute("value" , value) (value是随机产生的假设第一次为10,第二次为20)

然后在B.jsp页面中引用了A.jsp,但是用session.getAttribute("value")取不到同步的值 (取到的value值第一次为null , 第二次为10,第三次为20)

jsp页面的加载机制是怎样的~~~~~~~~~~~~~~~

------解决方案--------------------
晕 这个要刷新才能取到值吧,原理我倒是忘了,关注下
------解决方案--------------------
可以看一下jsp被翻译成java后的代码,然后就知道了……
------解决方案--------------------
当然是先运行B.jsp。因为A.jsp是被放在B.jsp里。
------解决方案--------------------
跟顺序有关,下面这个顺序写的话应该能得到A里设定的session值
HTML code

<jsp:include page="A.jsp" />
TEST:
A.value:${value}

------解决方案--------------------
第一次为null是因为 请求B.jsp时,此时value没有值,之后通过jsp:include指令include到这个页面,也就是request.getDispatcher("/A.jsp").include(req,resp);
第二次是因为已经给了随机值10
第三次和第二次类似

可以将jsp:include指令改成<%@include file="A.jsp"%>试试
结果应该是10 20