标签:page
page属性范围深入
在javax.servlet.jsp.PageContext中发现还有如下属性设置方法:
NO | 方法 | 类型 | 描述 |
1 | Public void setAttribute(String name, Object o, int scope) | 普通 | 设置属性并指定保存范围 |
而scope的方法有如下4种:
NO | 方法 | 类型 | 描述 |
1 | Public static final int PAGE_SCOPE | 常量 | 表示page属性范围,默认 |
2 | Public static final int REQUEST_SCOPE | 常量 | 表示 request属性范围 |
3 | Public static final int SESSION_SCOPE | 常量 | 表示 session属性范围 |
4 | Public static final int APPLICATION_SCOPE | 常量 | 表示application属性范围 |
由上两表可知其实用pageContext也可以对4种属性全部指定设置。
例1
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%> <%--导java.util包--%>
<html>
<head>
<title>page_scope</title>
</head>
<body>
<%
//设置request属性范围,此属性服务器跳转属性有效
pageContext.setAttribute("name", "郑廉晨", PageContext.REQUEST_SCOPE);
pageContext.setAttribute("birthday", new Date(), PageContext.REQUEST_SCOPE);
%>
<jsp:forward page="request_scope_02.jsp" /> <%--进行服务器跳转--%>
</body>
</html><%--request属性: 服务器跳转属性有效--%>
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%> <%--导java.util包--%>
<html>
<head>
<title>request_scope</title>
</head>
<body>
<%
//从当前页面取出属性,并执行向下转型操作
String username = (String) request.getAttribute("name");
Date userbirthday = (Date) request.getAttribute("birthday");
%>
<h2>姓名:<%=username%></h2>
<h2>生日:<%=userbirthday%></h2>
</body>
</html>例2
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%> <%--导java.util包--%>
<html>
<head>
<title>page_scope</title>
</head>
<body>
<%
//设置request属性范围,此属性服务器跳转属性有效
pageContext.setAttribute("name", "郑廉晨", PageContext.SESSION_SCOPE);
pageContext.setAttribute("birthday", new Date(), PageContext.SESSION_SCOPE);
%>
<!--通过超链接跳转,属于客户端跳转,地址栏有变化哦-->
<a href="session_scope_02.jsp">通过超链接取得属性</a>
</body>
</html><%--session属性: 在一个浏览器中属性都有效--%>
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%> <%--导java.util包--%>
<html>
<head>
<title>request_scope</title>
</head>
<body>
<%
//从当前页面取出属性,并执行向下转型操作
String username = (String) session.getAttribute("name");
Date userbirthday = (Date) session.getAttribute("birthday");
%>
<h2>姓名:<%=username%></h2>
<h2>生日:<%=userbirthday%></h2>
</body>
</html>以上内容参考JAVAWEB开发实战经典(名师讲坛)
本文出自 “走出地平线” 博客,请务必保留此出处http://udbful.blog.51cto.com/10601869/1683105
标签:page
原文地址:http://udbful.blog.51cto.com/10601869/1683105