您的位置:首页 > Web前端 > JavaScript

jsp的九大内置对象和四大作用域<1>

2014-11-12 08:52 525 查看
四大作用域

1.page(部分)

范围:只在一个页面中保存数据; javax.servlet.jsp.PageContext(抽象类)

只能在页面内传递,设置page范围的数据 key->value

pageScope.jsp

<%pageContext.setAttribute("name","page王小二");

pageContext.setAttribute("age",12);%>

<%

//取值

String name=(String)pageContext.getAttribute("name");

int age=(Integer)pageContext.getAttribute("age");

%>

<p>名字:<%=name%></p>

<p>年龄:<%=age%></p>

2.Request

范围:只在一个请求中保存数据;javax.servlet.HttpServletRequest(接口)

在页面中传递(类似发短信,只在一次中有效)

requestScope.jsp(部分)

<%request.setAttribute("name","request王小二");

request.setAttribute("age",12);%>

<%

<jsp:forward page="requestTarget.jsp"></jsp:forward>

requestTarget.jsp(部分)

<%

//取值

String name=(String)request.getAttribute("name");

int age=(Integer)request.getAttribute("age");

%>

<p>名字:<%=name%></p>

<p>年龄:<%=age%></p>

3.Session

范围:在一次会话范围中保存数据,仅供单个用户使用;javax.servlet.http.Httpsession(接口)

在服务器端保存,默认保存半个小时,仅供单个用户使用,所以不用设置jsp:forward就能使用其中的值

浏览器关闭session消失(类似打电话,挂了就没了)

sessionScope.jsp(部分)

<%session.setAttribute("name","session王小二");

session.setAttribute("age",12);%>

sessionTarget.jsp(部分)

<%

//取值

String name=(String)session.getAttribute("name");

int age=(Integer)session.getAttribute("age");

%>

<p>名字:<%=name%></p>

<p>年龄:<%=age%></p>

Application

范围:在整个服务器上保存数据,所有用户共享;javax.servlet.ServletContext(接口)

与session类似,不同浏览器也是能使用,而session不能

代码略;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: