JSP脚本中的9个内置对象---05 pageContext对象

pageContext对象代表页面上下文,主要用于访问JSP页面之间的共享数据.

使用pageContext可以访问page,request,session,application范围内的变量.

pageContext是pageContext类的实例,它提供两个方法来访问page,request,session,application范围内的变量.

  • getAttribute(String name) : 取得page范围内的name属性.
  • getAttributes(String name,int scope) :取得指定范围内的name属性,其中scope可以是如下4个值.
  • PageContext.PAGE_SCOPE:对应于page范围.
  • PageContext.REQUEST_SCOPE:对应r于equest范围
  • PageContext.SESSION_SCOPE:对应于session范围
  • PageContext.APPLICATION_SCOPE:对应于application范围

与getAttribute()方法对应,PageContest也提供了对应的setAttribute()方法,用于将指定变量放入page,request,session,application范围内.

pageContext还可以用于获取其他内置对象,pageContext对象包含如下方法.

  • ServletRequest getRequest();获取request对象
  • ServletResponse getResponse();获取response对象
  • ServletConfig getServletConfig();获取config对象
  • ServletContext getServletContext();获取application对象
  • HttpSession getSession();获取session对象

一旦在JSP,servlet编程中获取了pageContext对象,就可以通过它提供的方法来获取其他内置对象.

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ageContext</title>
</head>
<body>
	<%
		/* 使用pageContext设置属性,默认在page内 */
		pageContext.setAttribute("page", "hello");

		/* request */
		request.setAttribute("request", "hello");
		pageContext.setAttribute("request2", "hello", pageContext.REQUEST_SCOPE);

		/* session */
		session.setAttribute("session", "hello");
		pageContext.setAttribute("session2", "hello", pageContext.SESSION_SCOPE);

		/* application */
		application.setAttribute("application", "hello");
		pageContext.setAttribute("application2", "hello", pageContext.APPLICATION_SCOPE);

		out.println("page" + pageContext.getAttributesScope("page"));
		out.println("request" + pageContext.getAttributesScope("request"));
		out.println("request2" + pageContext.getAttributesScope("request2"));
		out.println("session" + pageContext.getAttributesScope("session"));
		out.println("session2" + pageContext.getAttributesScope("session2"));
		out.println("application" + pageContext.getAttributesScope("application"));
		out.println("application2" + pageContext.getAttributesScope("application2"));
	%>
</body>
</html>


猜你喜欢

转载自blog.csdn.net/sjbzl/article/details/53982109
今日推荐