文章说明:黑色字体-已知,蓝色字体-所见即所得,红色字体-还需要再找资料弄明白的,黄色背景-提炼关键信息
参考资料:很多参考资料,段落下有原文链接到原作者
JSP九大内置对象
request对象
HttpServletRequest类的实例,一次请求访问的多个资源(转发)。
主要方法:
Object getAttribute(String name):获取指定参数值
void setAttribute(String name,Objectvalue):将指定属性的值设置为value
String getParameter(String name):获取请求参数名为name的参数值
Enumeration getParameterNames():获取所有请求参数的名字集合
String[] getParameterValues(String name):获得name请求参数的参数值
Map getParameterMap():获取所有请求参数名和请求参数值组成的Map对象
void setCharacterEncoding(String encoding):设置编码格式。
response 对象
HttpServletResponse类的实例,响应对象。
常用方法:
void addCookie(Cookie cookie):添加一个Cookie对象,用于在客户端保存特定信息
void addHeader(String name,String Value):添加HTTP头信息,该信息将被发送到客户端
void containsHeader(String name):判断指定名字的HTTP文件头是否存在
void sendError(int):向客户端发送错误状态吗
void sendRedirect(String url):重定向JSP文件
void setContentType(String contentType):设置MIME类型与编码方式
session对象
HttpServletSession类的实例,一次会话的多个请求。
所谓会话,是指从一个客户打开浏览器与服务器建立连接,到这个客户关闭浏览器与服务器断开连接的过程。
常用方法:
Object getAttribute(String name):获取session范围内name属性的值。
void setAttribute(String name,Objectvalue):设置session范围内name属性的值为value,并存储在session对象中。
void removeAttribute(String name):删除session范围内name属性的值
Enumeration getAttributeNames():获取所有session对象中存放的属性名称
Long getCreationTime():返回session被创建时间
Sring getId():返回session创建时由JSP容器所设定的唯一标识
long getLastAccessedTime():返回用户最后一次通过session发送请求的时间,单位为毫秒
int getMaxInactiveInterval():返回session的失效时间,即两次请求间间隔多少时间该session就被取消,单位为秒
boolean isNew():判断是否为新的session
void invalidate():清空session内容
application对象
ServletContext——所有用户间数据共享
生命周期是从服务器启动直到服务器关闭为止。
常用方法:
void setAttribute(String name,Objectvalue):以键值对方式,将一个对象的值存放到application中。
Object getAttribute(String name):根据属性名获取application中存放的值
pageContext对象
PageContext——当前页面共享数据,可以获取其他 8 个对象
常用方法:
page对象
基类是java.lang.Object类,当前页面(Servlet)对象。
常用方法
config对象
基类是javax.servlet.servletConfig接口,Servlet的配置对象。
只有在编写Servlet时,需要重载Servlet的init()方法时才会用到config对象
常用方法:
exception对象
基类是javax.servlet.jsp.JspException类,异常对象。
结合errorPage 异常处理页面中处理exception对象
常用方法:
out对象
基类是javax.servlet.jsp.JspWriter类,输出对象,输出数据到页面上。
常用方法:
public abstract void clear()throwsjava.io.IOException:清除缓冲区中内容,但不把数据输出到客户端
public abstract void clearBuffer()throwsjava.io.IOException:清除缓冲区中内容,同时把数据输出到客户端
public abstract void close()throwsjava.io.IOException:关闭缓冲区并输出缓冲区内数据
public abstract void flush()throwsjava.io.IOException:输出缓冲区内数据
public int getBufferSize():获取缓冲区大小
public abstract int getRemaining():获取剩余缓冲区大小
public Boolean isAutoFlush():缓冲区是否进行自动清除
public abstract void newline()throwsjava.io.IOException:输出一个换行符
publicabstract void print(String st) throwsjava.io.IOException:向客户端输出数据
publicabstract void println(String str) throwsjava.io.IOException:向客户端输出数据并换行
4大作用域
pageContext(当前页面有效)
request
session
application(上下文对象)(最大)