JSP 常用内置对象:page、pageContext,java 基础常见面试题
request
response
page
session
application
pageContext
config
exception
[](
)1、page 对象
=======================================================================
page 是 java.lang.Object 类的一个实例,它指的是 JSP 实现类的实例,也就是说,它是 JSP 本身。相当于 JSP 编译生成 servlet 后是 servlet 类的 this 对象。从转换后的 Servlet 类的代码中,可以看到这种关系:Object page = this;在 JSP 页面实际当中很少用到。
[](
)2、pageContext 对象
==============================================================================
pageContext 对象代表当前 JSP 页面的上下文,该对象提供了对当前 JSP 页面所有对象的访问,使 pageContext 对象的方法可以访问除本身以外的 8 个 JSP 内部对象。pageContext 对象相当于 JSP 程序中所有对象功能的集成者。但其他的 8 个内置对象也都可以直接访问,所以 pageContext 对象基本不会采用。
[](
)3、四大作用域的范围
=========================================================================
page 作用域指当前 JSP 页面的范围
request 作用域内的对象则是与客户端的请求绑定在一起
session 对象作用域:一次会话
<%
//页面级别(当前页面内有效,基本用不到)
pageContext.setAttribute("a",1);
//请求转发级别(只要不是重定向,在一个请求范围内就有效,经常使用)
request.setAttribute("b",2);
//会话级别(只要早同一个浏览器的会话中就有效,经常使用)
session.setAttribute("c",3);
//服务器级别(只要服务器不关闭就有效,特殊情况使用)
application.setAttribute("d",4);
%>
pageContext < request < session < application
[](
)4、exception 对象(不经常用)
==================================================================================
<%@ page isErrorPage="true" errorPage="error.jsp" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" %>
4.1、exception 对象主要处理 JSP 执行异常
常用方法(前连个方法用的居多):
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page contentType="text/html;charset=UTF-8" errorPage="error.jsp" language="java" %>
<html>
<head>
<title>app1.jsp</title>
</head>
<body>
<%!
int a=8;
%>
<%= a/0 %> <%--算数运算错误--%>
</body>
</html>
<%@ page isErrorPage="true" contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h2>
//此处的 exception,在上述 page 标签里必须要有 isErrorPage="true",
//才可以使用
<font color="red">
错误原因:<%= exception.getMessage() %>
<br> <%= exception.toString() %>
</font>
</h2>
</body>
</html>
程序说明:
app1.j
sp 中 errorPage=“error.jsp” 指定错误处理页面。
error.jsp 中 isErrorPage=“true” 指定该页面是错误处理页面。
在 error.jsp 页面中<%=exception.getMessage() %>是输出获取的异常消息字符串。
运行结果
[](
)5、config 对象(不经常用)
评论