内置对象特点:
1. 由JSP规范提供,不用编写者实例化
2. 通过Web容器实现和管理
3. 所有JSP页面均可使用
4. 只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>)
常用内置对象:
1. 输出输入对象:request对象、response对象、out对象
2. 通信控制对象:pageContext对象、session对象、application对象
3. Servlet对象:page对象、config对象
4. 错误处理对象:exception对象
对象常用方法说明:
1.out对象(数据流 javax.servlet.jsp.jspWriter)
方法名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 说明
print或println??????????????????????????? 输出数据
newLine?????????????????????????????????? 输出换行字符
flush ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 输出缓冲区数据
close ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?关闭输出流
clear ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?清除缓冲区中数据,但不输出到客户端
clearBuffer ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?清除缓冲区中数据,输出到客户端
getBufferSize ? ? ? ? ? ? ? ? ? ? ? ? ?获得缓冲区大小
getRemaining ? ? ? ? ? ? ? ? ? ? ? ? ?获得缓冲区中没有被占用的空间
isAutoFlush ? ? ? ? ? ? ? ? ? ? ? ? ? ? 是否为自动输出
2.request对象(请求信息 javax.servlet.http.HttpServletRequest)
方法名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?说明
isUserInRole ? ? ? ? ? ? ? ? ? ? ? ? 判断认证后的用户是否属于某一成员组
getAttribute ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取指定属性的值,如该属性值不存在返回Null
getAttributeNames ? ? ? ? ? ? ? ?获取所有属性名的集合
getCookies ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取所有Cookie对象
getCharacterEncoding ? ? ? ? ?获取请求的字符编码方式
getContentLength ? ? ? ? ? ? ? ? ?返回请求正文的长度,如不确定返回-1
getHeader ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取指定名字报头值
getHeaders ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取指定名字报头的所有值,一个枚举
getHeaderNames ? ? ? ? ? ? ? ? ?获取所有报头的名字,一个枚举
getInputStream????????????????????? 返回请求输入流,获取请求中的数据
getMethod ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取客户端向服务器端传送数据的方法
getParameter ? ? ? ? ? ? ? ? ? ? ? ? 获取指定名字参数值
getParameterNames ? ? ? ? ? ? 获取所有参数的名字,一个枚举
getParameterValues ? ? ? ? ? ? ?获取指定名字参数的所有值
getProtocol ? ? ? ? ? ? ? ? ? ? ? ? ? ? 获取客户端向服务器端传送数据的协议名称
getQueryString ? ? ? ? ? ? ? ? ? ? ? 获取以get方法向服务器传送的查询字符串
getRequestURI?????????????????????? 获取发出请求字符串的客户端地址
getRemoteAddr?????????????????????? 获取客户端的IP地址
getRemoteHost?????????????????????? 获取客户端的名字
getSession ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取和请求相关的会话
getServerName?????????????????????? 获取服务器的名字
getServerPath ? ? ? ? ? ? ? ? ? ? ? ? 获取客户端请求文件的路径
getServerPort ? ? ? ? ? ? ? ? ? ? ? ? ?获取服务器的端口号
removeAttribute ? ? ? ? ? ? ? ? ? ? ? 删除请求中的一个属性
setAttribute ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?设置指定名字参数值
3.response对象(响应 javax.servlet.http.HttpServletResponse)
方法名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 说明
addCookie ? ? ? ? ? ? ? ? ? ? ? ? ?添加一个Cookie对象
addHeader ? ? ? ? ? ? ? ? ? ? ? ? 添加Http文件指定名字头信息
containsHeader ? ? ? ? ? ? ? ? 判断指定名字Http文件头信息是否存在
encodeURL ? ? ? ? ? ? ? ? ? ? ? 使用sessionid封装URL
flushBuffer ? ? ? ? ? ? ? ? ? ? ? ? 强制把当前缓冲区内容发送到客户端
getBufferSize??????????????????? 返回缓冲区大小
getOutputStream ? ? ? ? ? ? ?返回到客户端的输出流对象
sendError ? ? ? ? ? ? ? ? ? ? ? ? ?向客户端发送错误信息
sendRedirect ? ? ? ? ? ? ? ? ? ?把响应发送到另一个位置进行处理
setContentType ? ? ? ? ? ? ? ?设置响应的MIME类型
setHeader ? ? ? ? ? ? ? ? ? ? ? ? 设置指定名字的Http文件头信息
4.session对象(会话 javax.servlet.http.HttpSession)
方法名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?说明
getAttribute ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取指定名字的属性
getAttributeNames ? ? ? ? ? ? ? ? ? ? ? ? ?获取session中全部属性名字,一个枚举
getCreationTime ? ? ? ? ? ? ? ? ? ? ? ? ? ? 返回session的创建时间
getId ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?获取会话标识符
getLastAccessedTime ? ? ? ? ? ? ? ? ? 返回最后发送请求的时间
getMaxInactiveInterval ? ? ? ? ? ? ? ? ? ?返回session对象的生存时间单位千分之一秒
invalidate ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?销毁session对象
isNew ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 每个请求是否会产生新的session对象
removeAttribute ? ? ? ? ? ? ? ? ? ? ? ? ? ? 删除指定名字的属性
setAttribute ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?设定指定名字的属性值
5.pageContext对象(页面上下文 javax.servlet.jsp.PageContext)
方法名????????????????????? 说明
forward???????????????????? 重定向到另一页面或Servlet组件
getAttribute ? ? ? ? ? ? ? 获取某范围中指定名字的属性值
findAttribute ? ? ? ? ? ? ?按范围搜索指定名字的属性
removeAttribute ? ? ? 删除某范围中指定名字的属性
setAttribute ? ? ? ? ? ? ?设定某范围中指定名字的属性值
getException ? ? ? ? ? 返回当前异常对象
getRequest ? ? ? ? ? ? 返回当前请求对象
getResponse ? ? ? ? ?返回当前响应对象
getServletConfig ? ? 返回当前页面的ServletConfig对象
getServletContext ? 返回所有页面共享的ServletContext对象
getSession ? ? ? ? ? ? ?返回当前页面的会话对象
6.application对象(应用程序 javax.servlet.ServletContext)
方法名????????????????????? 说明
getAttribute??????????????? 获取应用对象中指定名字的属性值
getAttributeNames ? ?获取应用对象中所有属性的名字,一个枚举
getInitParameter ? ? ? 返回应用对象中指定名字的初始参数值
getServletInfo ? ? ? ? ? ?返回Servlet编译器中当前版本信息
setAttribute??????????????? 设置应用对象中指定名字的属性值
7.config对象(Servlet的配置信息 javax.servlet.ServletConfig)
方法名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 说明
getServletContext????????????? 返回所执行的Servlet的环境对象
getServletName???????????????? 返回所执行的Servlet的名字
getInitParameter ? ? ? ? ? ? ? ?返回指定名字的初始参数值
getInitParameterNames ? ?返回该JSP中所有的初始参数名,一个枚举
8.page对象(当前JSP的实例,java.lang.object)
它代表JSP被编译成Servlet,可以使用它来调用Servlet类中所定义的方法
9.exception对象(运行时的异常,java.lang.Throwable)
被调用的错误页面的结果,只有在错误页面中才可使用,即在页面指令中设置:<%@page isErrorPage=“true”%>
Request(Javax.servlet.ServletRequest)它包含了有关浏览器请求的信息.通过该对象可以获得请求中的头信息、Cookie和请求参数。
Response(Javax.servlet.ServletResponse)作为JSP页面处理结果返回给用户的响应存储在该对象中。并提供了设置响应内容、响应头以及重定向的方法(如cookies,头信息等)
Out(Javax.servlet.jsp.JspWriter)用于将内容写入JSP页面实例的输出流中,提供了几个方法使你能用于向浏览器回送输出结果。
pageContext(Javax.servlet.jsp.PageContext)描述了当前JSP页面的运行环境。可以返回JSP页面的其他隐式对象及其属性的访问,另外,它还实现将控制权从当前页面传输至其他页面的方法。
Session(javax.servlet.http.HttpSession)会话对象存储有关此会话的信息,也可以将属性赋给一个会话,每个属性都有名称和值。会话对象主要用于存储和检索属性值。
Application(javax.servle.ServletContext)存储了运行JSP页面的servlet以及在同一应用程序中的任何Web组件的上下文信息。
Page(Java.lang.Object)表示当前JSP页面的servlet实例
Config(javax.servlet.ServletConfig)该对象用于存取servlet实例的初始化参数。
Exception(Javax.lang.Throwable)在某个页面抛出异常时,将转发至JSP错误页面,提供此对象是为了在JSP中处理错误。只有在错误页面中才可使用
<%@page isErrorPage=“true”%>
Jsp内置对象 | 功能 | 主要方法 |
out | 向客户端输出数据 | print() println() flush() clear() isAutoFlush() getBufferSize()?? close() ………… |
request | 向客户端请求数据 | getAttributeNames() getCookies() getParameter() getParameterValues() setAttribute() getServletPath() ………….. |
response | 封装了jsp产生的响应,然后被发送到客户端以响应客户的请求 |
addCookie() sendRedirect() setContentType() flushBuffer() getBufferSize() getOutputStream() sendError() containsHeader()…………… |
application | ?存储了运行JSP页面的servlet以及在同一应用程序中的任何Web组件的上下文信息。 | ?getAttribute() ? getAttributeNames() getInitParameter() ? ??getServletInfo() setAttribute() ? ?? |
config | 表示Servlet的配置,当一个Servlet初始化时,容器把某些信息通过此对象传递给这个Servlet | getServletContext() getServletName() getInitParameter()?? getInitParameterNames()…………… |
page | Jsp实现类的实例,它是jsp本身,通过这个可以对它进行访问 | flush()……… |
pagecontext | 为JSP页面包装页面的上下文。管理对属于JSP中特殊可见部分中己经命名对象的该问 |
forward() getAttribute() getException() getRequest() getResponse()?? getServletConfig() getSession() getServletContext() setAttribute() removeAttribute() findAttribute() …………… |
session | 用来保存每个用户的信息,以便跟踪每个用户的操作状态 |
getAttribute() getId()?? getAttributeNames() getCreateTime() getMaxInactiveInterval() invalidate() isNew() |
exception | 反映运行的异常 | getMessage()………… |