1.问题里面的共享数据是指,在.jsp里的脚本代码 定义的变量/对象等
举例,
1 <% 2 Cart cart = request.getAttribute("cart"); 3 4 …… 5 %>
2.再打个比方————包含文件,有2种方法:
1).jsp标准动作
<jsp:include page="XXX.jsp"/> //这样包含进来的.jsp文件不共享数据,因为2个.jsp文件 各自独立!
2). jsp指令
<%@ include file="XXX.jsp"%> //这样包含进来的.jsp文件,共享数据,因为相当于是合成了一个.jsp文件!
------------------
【问题】jquery里的load方法,加载的.jsp文件,是否共享数据?它相当于是2中的哪一种包含文件方法的呢?
我的理解:都不一样。
这应该相当于重新又发了一次请求,显然不是一个request了,不过是共享session的。
发现你的jsp指令和jsp动作 弄反了
jsp动作共享request的,但是被include的页面却是访问不了主页面中定义的变量
jsp指令也可以看成是共享request的,实际上jsp指令在编译的时候就已经起作用了,最后只有一个jsp了,也就不存在所谓的共享request了,当然被include的页面也就可以访问主页面中定义的变量了
tks~
1.发现你的jsp指令和jsp动作 弄反了——真抱歉,这个已经改了
2.还有更多这方面的文章/资料么?有没有相关的书,有提到这个?(我看的相关的书,都介绍得不是很清楚…………)
@B_yellow: 我要是说我上面都是百度的,你信吗?而且再厚的工具书也不会花一章节的时间来讲解这么细的东西,像这种很典型的问题,一般你不会是第一个提问的,也不会是最后一个。搜索一些关键词,然后专门找一些博客,看看别人的总结会有很大收获的。
顺便也谢谢你让我复习了一下这个知识点
@ThreeTree: 额,不小心点了反对,(⊙o⊙)…
我重新整理/总结了一下,不知道对不对……(http://my.oschina.net/diedai/blog/273581)
会有这种问题是因为完全没有理解请求响应模型造成的.
B/S是基于请求响应模型的.并且是无状态的,
你先理解下请求响应模型和html的状态保持,就能解决你的问题.
你说的固然在理,但这些东西还是太理论了……