Base-Jsp-5-在页面、请求和用户之间共享数据

王朝java/jsp·作者佚名  2006-02-01
窄屏简体版  字體: |||超大  

v 在页面、请求和用户之间共享数据

Ø 将控制从一个页面传递到另一个页面

<jsp:forwqrd page=”somePage.jsp”/>

该行为将结束对一个页面的处理,而开始处理由page属性指定的页面,该页面叫

做目标页面。

目标页面可以访问关于请求(request)的全部信息,包括所有的请求参数。还可以

使用<jsp:param>行为元素加入额外的请求参数。

<jsp:forwqrd page=”somePage.jsp”/>

<jsp:param name=”msg” value=”Invalid email address”/>

</jsp:forward>

<jsp:param>元素指定的参数会添加到从原始请求中得到的参数中。Page属性可以

使用“/”开始的环境相关的路径,也可以使用相对路径(../foo/bar.jsp)。

例:路径c:\tomcat\webapps\myapp\registeration\userinfo下引用

Page=”bar.jsp”

c:\tomcat\webapps\myapp\registeration\userinfo/bar.jsp

Page=”../foo/bar.jsp”

c:\tomcat\webapps\myapp\registeration\foo/bar.jsp

Page=”/foo/bar.jsp”

c:\tomcat\webapps\myapp\foo\bar.jsp

Ø 将数据从一个页面传递到另一个页面

为了在页面、请求和用户之间共享数据对象,JSP提供了不同的作用域(scope)。作用

域定义了对象在多长时间内是可用的,以及它是仅可被一个用户使用,还是可以被应用

程序的所有用户共用。

JSP共定义以下几种作用域

i) page scope:

ii) request scope

iii) seesion scope

iv) application scope

® 默认作用域是页作用域,这个作用域中的对象知在该页面中可用。

® 请求作用域用于那些需要在所有处理同一请求的页面中都可用的对象

® 会话作用域中的对象可用于同一个浏览器发出的所有请求

® 应用程序作用域中的对象则被应用程序的所有用户所共享。

® <jsp:useBean>行为有一个scope属性,该行为保证bean 已经存在于该作用域中,或者创建一个新的bean,并将其放在指定的作用域中。

® <jsp:useBean>创建的bean可以作为EL表达式中的一个变量供人访问,一般情况下,仅指定变量即可,无论它保存在哪个作用域中,例如:

<c:out value=”${userInfo.userName}”/>

此时EL会按照以下作用域顺序来查找变量

i) <c:out value=”${pageScope.userInfo.userName}”/>

ii) <c:out value=”${requestScope.userInfo.userName}”/>

iii) <c:out value=”${sessionScope.userInfo.userName}”/>

iv) <c:out value=”${application.userInfo.userName}”/>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航