JSP(JavaServer Pages)内置对象是Java Web开发中非常有用的特性,它们允许开发者在不编写额外Java代码的情况下,直接访问请求、响应、会话等上下文信息。以下是JSP的九个内置对象及其常用方法:
request 对象
类型:javax.servlet.http.HttpServletRequest
用途:代表客户端的请求信息。
常用方法:
getParameter(String name): 获取指定名称的请求参数。
getParameterValues(String name): 获取指定名称的请求参数的值列表。
getParameterNames(): 获取所有请求参数的名称。
getParameterMap(): 获取所有请求参数的映射。
getInputStream(): 获取请求输入流。
getReader(): 获取请求字符输入流。
getSession(): 获取当前请求的会话对象。
getServerName(): 获取请求的远程主机的名称。
getRemoteAddr(): 获取请求的远程主机的IP地址。
response 对象
类型:javax.servlet.http.HttpServletResponse
用途:代表服务器对客户端的响应。
常用方法:
getOutputStream(): 获取响应输出流。
getWriter(): 获取响应字符输出流。
setContentType(String type): 设置响应内容类型。
setHeader(String name, String value): 设置响应头。
setStatus(int status): 设置响应状态码。
sendRedirect(String location): 重定向到另一个资源。
session 对象
类型:javax.servlet.http.HttpSession
用途:代表客户端与服务器之间的会话。
常用方法:
getAttribute(String name): 获取指定名称的会话属性。
setAttribute(String name, Object value): 设置一个会话属性。
removeAttribute(String name): 移除一个会话属性。
invalidate(): 使会话无效。
application 对象
类型:javax.servlet.ServletContext
用途:代表整个Web应用程序的环境。
常用方法:
getAttribute(String name): 获取指定名称的应用程序属性。
setAttribute(String name, Object value): 设置一个应用程序属性。
removeAttribute(String name): 移除一个应用程序属性。
getContextPath(): 获取Web应用程序的上下文路径。
out 对象
类型:javax.servlet.jsp.JspWriter
用途:用于向客户端输出内容。
常用方法:
print(String s): 输出字符串。
println(String s): 输出字符串并换行。
flush(): 刷新缓冲区。
clearBuffer(): 清除缓冲区内容。
page 对象
类型:java.lang.Object
用途:代表当前JSP页面的实例。
常用方法:
通常不直接使用,但可以通过它来调用out对象。
config 对象
类型:javax.servlet.ServletConfig
用途:代表Servlet配置信息。
常用方法:
getInitParameter(String name): 获取初始化参数。
getServletContext(): 获取ServletContext对象。
pageContext 对象
类型:javax.servlet.jsp.PageContext
用途:提供对页面上下文的访问。
常用方法:
getRequest(): 获取HttpServletRequest对象。
getResponse(): 获取HttpServletResponse对象。
getSession(): 获取HttpSession对象。
getServletContext(): 获取ServletContext对象。
exception 对象
类型:java.lang.Throwable
用途:代表页面中发生的异常。
常用方法:
printStackTrace(): 打印异常堆栈信息。
getMessage(): 获取异常消息。
这些内置对象在JSP页面中可以直接使用,极大地简化了Web开发的工作。