JSP中page、request、session和application的scope

JSP四种范围:pagerequestsessionapplication
   page    指单单一页jsp page的范围;
   request的范围只在一jsp页发出请求到另一页之间,随后这个属性失效;
   session范围是用户和服务器连接的那段时间,用户与服务器断开属性就失效;
   application作用范围最大,慎用,在服务器一开始执行服务到服务器关闭为止。可能造成服务器负载过重。   

   有些程序员会将requext,session,application和pageContext归为一类,原因在于它们都能借助setAttribute()和getAttribute()来设定和取得其属性Attribute,通过这2种方法来做到数据共享.

但是它们有什么差别吗?它们之间最大的差别就在于范围(Scope)不一样.

下面我就来简单介绍一下它们的不同之处...

page

所谓的Page指的是单单一页JSP Page的范围. 若要将数据存入Page范围时, 可以用pageContext对象的

setAttribute()方法和getAttribute()方法.

Request

Request的范围是指在一JSP网页发出请求到另一个JSP网页之间,随后这个属性就失效.

Session

Session的作用范围为一段用户持续和发物器所连接的时间,但与服务器断线后,这个属性就无效.只要将数据存

入Session对象,数据的范围就为Session.

Application

Application的作用范围在服务器一开始执行服务,到服务器关闭为止.Application的范围最大,停留的时间也最久,

所以使用时要特别注意,不然可能造成服务器负载越来越严重的情况.

以下列出了request,session,application和pageContext都可以使用的存储和取得属性的方法
void setAttribute(String name, Object value) 设定name属性的值为value
Enumeration getAttributeNamesInScope(int scope )取得所有scope 范围的属性
Object getAttribute(String name) 取得name 属性的值
void removeAttribute(String name) 移除name 属性的值

注意:pageContext并无getAttributeNames()方法.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值