目录
4、application对象(全局有效,也就是整个项目有效)
1、request对象(同一次请求有效)
包含客户端向服务端发送的请求信息,包括头信息、请求方式和请求参数等,其作用域为一次请求。
String getParameter(String name)方法可以获取用户提交的数据
String[] getParameterValues(String name)方法可以获取多个字段值(一般适用于checkbox)
void setCharaterEncoding("UTF-8")设置请求编码格式(tomcat7以前默认是iso-8859-1,tomcat8之后默认为utf-8)
getRequestDispatcher("b.jsp").forward(request, response) 请求转发 A->B
ServletContext getServerContext() 获取项目的ServletContext对象
Cookie[ ] getCookies() 获取Cookie中的数据 返回类型
2、response对象(同一次响应有效)
它和request对象相对应,用于响应客户端的请求,向客户输出信息,它的作用域为一次会话。
sendRedirect()方法将客户请求重定向到一个不同的页面
setContentType()设置服务端的响应编码类型
3、session对象(同一次会话有效)
它和cookie相对应,用来保存客户信息的“缓存”区
Session工作机制:当用户第一次向服务端发起请求时,服务器自动创建一个session 对象用来保存客户信息,同时给它创建一个sessionID,(并且也会将该ID复制并保存到cookie中,命名为JSESSIONID)用来唯一区分用户,跟踪用户信息状态,并且如果客户端在一定时间内不再发出请求时,session就会自动消失关闭,这个时间一般是默认30min,当然也可以编写程序时来设置。
注:Cookie和session均采用map保存结构,其格式也就为 “Key/value”,但是cookie的键值对是(String,String),而session则是(String, Object),所以getAttributr返回的是对象,有时候需要做比如强制转换等步骤。
String getId() 用来获取sessionID
boolean isNew() 用来判断是否是新用户
invalidate() 销毁session(比如在用户注销或者退出登录时使用)
操作session的方法:
void setAttribute() 设置指定名称的属性值,并保存在session对象中
Object getAttribute() 获取指定名字的属性
removeAttribute() 移除已经保存在session中的指定名称的对象
void setMaxInactiveInterval(秒) 设置最大有效非活动时间()
int getMaxInactiveInterval() 获取最大有效非活动时间
4、application对象(全局有效,也就是整个项目有效)
application 对象保存所有应用程序的公有数据,在服务器启动时创建,直到服务器关闭,所有用户共享一个application对象。
getContentPath() 返回项目相对路径
getRealPath(“”+ getContentPath) 返回项目绝对路径(这可以在eclipse的服务器位置处管理,默认webapps下)
同样也有如下四个方法:
removeAttribute(String name) 从ServletContext的对象中去掉指定名称的属性
setAttribute(String name, Object object) 向ServletContext中添加对应的名称和属性
getAttribute(String name) 从ServletContext中获取指定名称的对象
5、out 对象
out 对象主要用来向客户端输出各种数据,并且管理服务器上的输出缓存区,缓冲区默认值一般是8KB,可以使用页面指令page来改变默认缓冲区的值。
在使用out输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出空间。待数据输出完毕后,要及时关闭输出流。
6、pageContext 对象
pageContext 对象的作用管理已经命名的对象的访问,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象。
7、config 对象
config 对象表示Servlet的配置,当一个Servlet初始化时,容器把某些信息通过这个对象传递给这个Servlet。 开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。
8、page 对象
page 对象代表JSP本身,只有在JSP页面内才是合法的。 page隐含对象本质上包含当前 Servlet接口引用的变量,类似于Java编程中的 this 指针。
9、exception 对象
exception 对象的作用是显示异常信息,只有在页面指令里有 isErrorPage="true" 的页面中才可以使用,在一般的JSP页面中使用该对象将无法编译JSP文件。
如果在JSP页面中出现没有捕获到的异常,就会生成 exception 对象,并把 exception 对象传送到在page指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。