![]() |
|
| 网站首页 | 数据库教程 | web编程 | 服务器 | 程序设计 | | ||
![]() |
||
|
||
|
||||||
page、request、session、application的作用范围 | ||||||
作者:佚名 文章来源:不详 点击数: 更新时间:2007-9-12 ![]() |
||||||
今天看孙卫琴的《精通Struts:基于MVC的JavaWeb设计与开发》,对以前一个模棱两可的问题有了一个重新的认识。
问题:page、request、session、application的作用范围? 书中解答,此处只摘录重要语句: page:用户请求的当前页面; Request:用户请求访问的当前组件,以及和当前web组件共享同一用户请求的web组件。如:被请求的jsp页面和该页面用<include>指令包含的页面以及<forward>标记包含的其它jsp页面; Session:同一个http会话中的web组件共享它; Application:整个web应用的所用web组件共享它。 此处我举个例子说明 一个网站MyWebSite,其包含7个jsp页面,分别为master.jsp、top.jsp、main.jsp、foot.jsp、login.jsp、success.jsp和news.jsp。master.jsp页面通过<include>指令包含top.jsp、main.jsp、foot.jsp三个页面,当用户通过login.jsp登录成功后,进入success.jsp页面然后通过此页面的<forward>标签跳转到master.jsp页面中。 我们在success.jsp页面中加入如下代码(此处用到jstl标签) ![]() ![]() ![]() ![]() ![]() ![]()
这里一一说明 1.变量 test1 只在success.jsp内有效; 2.变量 test2 在success.jsp、master.jsp、top.jsp、main.jsp、foot.jsp中有效; 3.变量 test3 在7个页面中都有效(包括login.jsp和news.jsp); 4.变量 test4 在整个网站,当前也就是7个页面中都有效(包括login.jsp和news.jsp)。 Test3和test4有效范围一样,有什么区别呢? 其实区别蛮大的,我只说明一点,假如此时又有另一个用户访问master.jsp页面,那么test3相对于这个用户来说就无效,而test4却是有效的。或者当第一个登录的用户关闭浏览器后,再重新访问master.jsp时,test3就无效,而test4却有效。 本文来源:http://blog.csdn.net/enkyu/archive/2007/09/08/1776957.aspx
|
||||||
文章录入:admin 责任编辑:admin | ||||||
【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 网站地图 | 管理登录 | | |||
|