request:请求对象
response:响应对象
pageContext:JSP的上下文对象
session:会话对象
application:ServletContext对象
config:ServletConfig对象
out:JSP输出流对象
page:指向当前JSP的对象
exception:异常对象
七、JSP四大域对象域对象是指可以像Map一样存取数据的对象,四个域对象功能一样,只是对数据的存取范围不同
代码演示1:四个域对象存取数据的范围的不同(在web目录下创建scope1.jsp)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>scope1</title>
</head>
<body>
<h1>scope1.jsp页面</h1>
<%
//向四个域对象中分别保存数据
pageContext.setAttribute("key", "pageContext");
request.setAttribute("key", "request");
session.setAttribute("key", "session");
application.setAttribute("key", "application");
%>
<%-- <jsp:forward page=""></jsp:forward>是请求转发标签,
page属性设置请求转发的路径 --%>
<jsp:forward page="/scope2.jsp"></jsp:forward>
</body>
代码演示2:在web目录下创建scope2.jsp
<head>
<title>Title</title>
</head>
<body>
<h1>scope2.jsp页面</h1>
<%-- JSP页面中不加任何标签直接输入的内容被write方法输出在浏览器的页面上 --%>
pageContext域是否有值:<%=pageContext.getAttribute("key")%> <br>
request域是否有值:<%=request.getAttribute("key")%> <br>
session域是否有值:<%=session.getAttribute("key")%> <br>
application域是否有值:<%=application.getAttribute("key")%> <br>
</body>
运行结果1:
运行结果2:
注意:若四个域对象在使用时范围都可满足要求,则使用的优先顺序是(范围从小到大):
pageContext --> request --> session --> application
八、JSP的out输出和response.getWriter输出的异同1.相同点:response表示响应,用于给客户端(浏览器)返回内容
out同样也是用于给客户端(浏览器)输出内容
2.不同点: