含义
内置对象:在JSP页面无需声明可以直接使用的对象
1. out
out对象用于在Web浏览器输出信息,相当于在JSP页面直接打印文本。输出时可以对数据缓冲区进行操作
- out.print(“hello”);//输出各类型数据
- out.clear()// 清除缓冲区的内容**
2.config
JSP向Servlet初始化时传递信息的对象,信息包括Servlet初始化的参数和服务器相关信息。
- ServletContext getServletContext() 返回含有服务器相关信息的ServletContext对象
- String getInitParameter(String name) 返回初始化参数的值
- Enumeration getInitParameterNames() 返回Servlet初始化所需所有参数的枚举
3.pageContext
代表当前正在处理的页面(常用于获取其他隐含对象)
- pageContext.getRequest():获取request对象
- pageContext.getResponse():获取response对象
- pageContext.getServletContext():获取application对象
- pageContext.getOut():获取out对象
- pageContext.getSession():获取session对象
4.request
表示客服端向服务器发送的请求,请求信息被封装在此对象中。
- 生存期
在服务器收到客户端请求时创建,在服务器响应时销毁。 - 常用方法
1.getContextPath():取得客户端请求的路径,对于JSP来说一般是当前Web应用程序的根目录
2.getRequestURL():取得请求的URL信息
3.getParameter(String name) 返回指定参数的参数值;
4.String[] getParameterValues(String name) 返回包含指定参数的所有参数值的数组;
5.void setAttribute(String,Object) 存储此请求中的属性;
6.object getAttribute(String name) 返回指定属性的属性值;
7.String getContentType() 得到请求体的MIME类型;
8.String getCharacterEncoding() 返回字符编码方式;
9.getMethod():获得请求的方法,get或post
10.getQueryString():取得查询字符串,即URL中”?”后面的文本
11.request.getRequestDispatcher(“/forward.jsp”).forward(request,reponse);//请求转发,从当前页面转发到另外一个页面,一次请求,request是同一个 - get和post请求方法
1.get请求:参数会以键值对的形式附加在URL后面传到后台去处理,例如(test.jsp部分代表表单中action中的值,name表示表单元素名,dd代表名为name的空间中的值):
http://localhost:8090/ReqTest/test.jsp?name=dd
2.post请求:参数不会附加在URL后面进行传输,而是以Form Data的形式传输,所以post请求适合传数据量比较大的数据,而get请求只适合传数据量小的数据。
5.response
是JSP中向客户端发送数据的响应。
- 生命周期
在服务器响应客户端请求时创建,在服务器完成向客户端响应后销毁。 常用方法
1.response.getPrintWriter():获得out对象,向页面输出
2.response.sendRedirect(String);//请求重定向,可以重定向到另外一个页面,两次请求不同,重定向属于不同的请求(request).
3.String getCharacterEncoding() 返回响应的字符编码;
4.void setContentType(String type) 设置响应的MIME类型;请求转发和请求重定向的区别:
请求转发:
服务器行为
URL地址栏不会发生变化。
只发出一次请求,即request对象是同一个
请求重定向:
客户端行为
URL地址栏发生变化
发出两次请求,即request对象不是同一个
6.session
指会话,指访问者从达到某个特定网络到离开为止的那段时间。常用来跨页面共享数据。
- 生命周期
浏览器第一次进入网站时(即浏览器连接到该服务器开始)创建,浏览器关闭时失效(或者调用session.invalidate()取消SESSION,使SESSION不可用)。 - 常用方法
1.Object setAttribute(String name,Object value) 使用指定名称将对象绑定到此会话;
2.Object getAttribute(String name) 返回此对话中,与指定名称绑定在一起的对象,如果该名称下没有绑定对象,返回null;
3.long getCreationTime() 返回SESSION创建时间
4.public String getId() 返回SESSION创建时JSP引擎为它设的唯一ID号
5.String[] getValueNames() 返回一个包含此SESSION中所有可用属性的数组
6.void removeValue(String name) 删除SESSION中指定的属性
7.cookie
是服务器发送给客户端浏览器的体积较小的纯文本文件,存在在客户端计算机上,随着用户的每次请求,附加在HTTP包中传递到服务器。也就是说Cookie允许一个Web站点在用户电脑上保存信息并且随后再取回它。
- 创建cookie
public Cookie(String name,String value);
例如:Cookie c = newCookie(username”,”john”);c.setMaxAge(3600); - 设置或读取cookie属性
public int getMaxAge():获得cookie过期时间(秒)
public void setMaxAge(int expiry):设置cookie过期时间
public String getName():获取cookie的名字
public void setName(String name):设置cookie的名字
public void String getValue():获取cookie的值
public void setValue(String value):设置cookie的值 - 添加cookie
response对象的方法:public void addCookie(Cookie cookie):添加cookie - 获取cookie
request对象的方法:public Cookie[] getCookies():获取cookie的数组
8.application
用于在多个程序或者多个用户之间共享数据。
生命周期
在服务器启动的时候创建application对象,在服务器关闭的时候appication对象才会消失。常用方法
1.Object getAttribute(String name) 返回给定名的属性值
2.Enumeration getAttributeNames() 返回所有可用属性名的枚举
3.void setAttribute(String name,Object obj) 设定属性的属性值
4.void removeAttribute(String name) 删除一属性及其属性值
5.URL getResource(String path) 返回指定资源(文件及目录)的URL路径
9.exception
exception对象是一个例外对象,用来显示异常信息.当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译
- String getMessage() 返回描述异常的消息
- String toString() 返回关于异常的简短描述消 息
- void printStackTrace() 显示异常及其栈轨迹
- Throwable FillInStackTrace() 重写异常的执行栈轨迹