JavaWeb_JSP页面的9个隐含对象
JSP页面的9个隐含对象
JSP 页面的隐含变量
- 1.JSP 页面的隐含变量:没有声明就可以使用的对象。JSP 页面一共有 9 个隐含对象。
public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {
PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
//...
//使用 <% %> 编写的代码在此位置. 可以用到 request, response, pageContext, session
//application, config, out, page 这 8 个隐含对象. (实际上还可以使用一个叫 exception 的隐含对象)
}
request
- 1.request:HttpServletRequest 的一个常用对象。
response
- 1.response:HttpServletResponse 的一个对象(在 JSP 页面中几乎不会调用 response 的任何方法)。
pageContext
- 1.pageContext:页面的上下文, 是 PageContext 的一个常用对象。可以从该对象中获取到其他 8 个隐含对象。也可以从中获取到当前页面的其他信息(学习自定义标签时使用它) 。
session
- 1.session:代表浏览器和服务器的一次会话,是 HttpSession 的一个常用对象。后面详细学习。
application
- 1.application:代表当前 WEB 应用,是 ServletContext 常用对象。
config
- 1.config:当前 JSP 对应的 Servlet 的 ServletConfig 对象(几乎不使用)。若需要访问当前 JSP 配置的初始化参数,需要通过映射的地址才可以。
<!-- 映射 JSP: -->
<servlet>
<servlet-name>hellojsp</servlet-name>
<jsp-file>/hello.jsp</jsp-file>
<init-param>
<param-name>test</param-name>
<param-value>testValue</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>hellojsp</servlet-name>
<url-pattern>/hellojsp</url-pattern>
</servlet-mapping>
out
- 1.out:JspWriter 常用对象,调用 out.println() 可以直接把字符串打印到浏览器上。
page
- 1.page:指向当前 JSP 对应的 Servlet 对象的引用,但为 Object 类型,只能调用 Object 类的方法(几乎不使用)。
exception
- 1.exception:在声明了 page 指令的 isErrorPage=“true” 时,才可以使用。
<%@ page isErrorPage="true" %>
pageContext,request,session,application(对属性的作用域的范围从小到大)
out,response,config,page
exception