JSP(JavaServer Pages)内置对象(也称为隐式对象或预定义对象)是JSP容器为每个页面提供的Java对象,开发者可以直接在JSP页面中使用它们,而无需显式声明。这些内置对象提供了对JSP页面运行环境信息的快速访问,如请求、响应、会话、应用程序上下文等。
以下是JSP的九个内置对象:
-
request:
HttpServletRequest
类型。它代表了客户端的请求信息,主要用于接收通过HTTP协议传送到服务器的数据。你可以使用它来访问请求参数、请求头、会话属性等。 -
response:
HttpServletResponse
类型。它代表了服务器的响应信息,主要用于向客户端发送数据。你可以使用它来设置响应头、重定向、输出文本、HTML或二进制数据等。 -
pageContext:
PageContext
类型。它提供了对JSP页面运行环境信息的访问,如请求、响应、会话、应用程序上下文等。它还可以用于在JSP页面间共享数据。 -
session:
HttpSession
类型。它用于跟踪与特定用户会话相关的信息。你可以使用它来存储和检索用户会话中的属性。 -
application:
ServletContext
类型。它代表了整个Web应用程序的上下文,可以用于存储和检索跨多个用户会话的数据。它还可以用于访问Web应用程序的初始化参数。 -
out:
JspWriter
类型。它是一个用于向客户端发送输出(通常是HTML)的对象。你可以使用它来编写文本、HTML标签、表达式等。 -
config:
ServletConfig
类型。它用于访问JSP页面的初始化参数。这些参数是在web.xml文件中为JSP页面定义的。 -
page(不推荐直接使用):
Object
类型(实际上是JSP页面本身)。它代表了当前的JSP页面,但在实际开发中,我们很少直接使用它。 -
exception(仅在错误页面中可用):
Throwable
类型。它代表了JSP页面在运行时发生的异常。这个对象仅在JSP错误页面中可用,用于访问和处理异常。
这些内置对象在JSP页面中是自动可用的,你可以直接通过它们的名字来访问它们,而无需进行任何声明或初始化。这些对象在JSP页面的脚本元素(如<%! %>, <% %>, <%= %>)和JSP标签中都可以使用。JSP主要用于创建动态Web页面。它允许开发者在HTML或XML页面中直接嵌入Java代码片段(scriptlets),从而创建能够响应客户端请求并动态生成内容的Web页面。JSP页面在服务器上被编译成Servlet,然后执行以生成HTML、XML或其他类型的文档,这些文档随后被发送到客户端。