jsp---->四种作用域
jsp---->四种作用域
小强斋太 发表于1年前
jsp---->四种作用域
  • 发表于 1年前
  • 阅读 0
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】如何购买服务器最划算?>>>   

page 范围:

在 JSP 中设置一个页的属性范围,必须通过pageContext 完成

<%
pageContext.setAttribute("name","MLDN") ;
pageContext.setAttribute("password","LXH") ;
%>
<%
String name = (String)pageContext.getAttribute("name") ;
String password = (String)pageContext.getAttribute("password") ;
%>


<h1>name : <%=name%></h1>
<h1>password : <%=password%></h1>

request

将属性保存在一次请求范围之内:
服务器端跳转<jsp:forward/>可以保存属性。

session

只要设置上去,则不管是什么跳转,都可以取得属性,与 session 有关的任何打开的页面都可以取得session,在重新打开的浏览器页面内失效。
session 的主要功能:用于验证用户是否登陆

application 属性范围值

只要设置一次,则所有的网页窗口都可以取得数据,如果要释放 application 资源,只能重新启动服务器
application 应用:在线人员统计、在线人员名单列表
application、session、request   都需要跨多个页属性保存是有内存开销的,如果能使用 request 就不要使用session,能使用session 的就不要使用application
 
实际上,四种属性范围,都是通过pageContext 对象完成的
pageContext  默认情况下表示一个页面的保存范围,
public abstract void setAttribute(String name,Object value) 上面用到的
public abstract void setAttribute(String name,Object value,int scope)

public static final int APPLICATION_SCOPE
public static final int SESSION_SCOPE
public static final int REQUEST_SCOPE
public static final int PAGE_SCOPE
总结:
四种属性范围都是依靠 pageContext 展开的,pageContext.setAttribute(String name,Object value,int scope)
如<% pageContext.setAttribute("name","wsz",PageContext.APPLICATION_SCOPE);%>
但是在开发中,往往使用session、request 范围最多
 
 

 

共有 人打赏支持
粉丝 0
博文 181
码字总数 0
×
小强斋太
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: