五、javax.servlet.http.HttpServletRequest接口(HTTP版本)
HttpServletRequest类主要处理:
1.读取和写入HTTP头标
2.取得和设置cookies
3.取得路径信息
4.标识HTTP会话。
HttpServletRequest接口中的方法
String getAuthType() 如果servlet由一个鉴定方案所保护,如HTTP基本鉴定,则返回方案名称。
String getContextPath() 返回指定servlet上下文(web应用)的URL的前缀。
Cookie[] getCookies() 返回与请求相关cookie的一个数组。
Long getDateHeader(String name) 将输出转换成适合构建Date对象的long类型取值的getHeader()的简化版。
String getHeader(String name) 返回指定的HTTP头标指。如果其由请求给出,则名字应为大小写不敏感。
Enumeration getHeaderNames() 返回请求给出的所有HTTP头标名称的权举值。
Enumeration getHeaders(String name) 返回请求给出的指定类型的所有HTTP头标的名称的枚举值,它对具有多取值的头标非常有用。
int getIntHeader(String name) 将输出转换为int取值的getHeader()的简化版。
String getMethod() 返回HTTP请求方法(例如GET、POST等等)
String getPathInfo() 返回在URL中指定的任意附加路径信息。
String getPathTranslated() 返回在URL中指定的任意附加路径信息,被子转换成一个实际路径。
String getQueryString() 返回查询字符串,即URL中?后面的部份。
String getRemoteUser() 如果用户通过鉴定,返回远程用户名,否则为null。
String getRequestedSessionId() 返回客户端的会话ID
String getRequestURI() 返回URL中一部分,从“/”开始,包括上下文,但不包括任意查询字符串。
String getServletPath() 返回请求URI上下文后的子串
HttpSession getSession() 调用getSession(true)的简化版。
HttpSession getSession(boolean create) 返回当前HTTP会话,如果不存在,则创建一个新的会话,create参数为true。
Principal getPrincipal() 如果用户通过鉴定,返回代表当前用户的java.security.Principal对象,否则为null。
boolean isRequestedSessionIdFromCookie() 如果请求的会话ID由一个Cookie对象提供,则返回true,否则为false。
boolean isRequestedSessionIdFromURL() 如果请求的会话ID在请求URL中解码,返回true,否则为false
boolean isRequestedSessionIdValid() 如果客户端返回的会话ID仍然有效,则返回true。
Boolean isUserInRole(String role) 如果当前已通过鉴定用户与指定角色相关,则返回true,如果不是或用户未通过鉴定,则返回false。
六、javax.servlet.ServletResponse接口(协议无关版本)
ServletResponse对象将一个servlet生成的结果传到发出请求的客户端。ServletResponse操作主要是作为输出流及其内容类型和长度的包容器,它由servlet引擎创建.
ServletResponse接口中的方法
void flushBuffer()throws IOException 发送缓存到客户端的输出内容。因为HTTP需要头标在内容前被发送,调用此方法发送状态行和响应头标,以确认请求。
int getBufferSize() 返回响应使用的缓存大小。如果缓存无效则返加0。
String getCharacterEncoding() 返回响应使用字符解码的名字。除非显式设置,否则为ISO-8859-1
Locale getLocale() 返回响应使用的现场。除非用setLocale()修改,否则缺省为服务器现场。
OutputStream getOutputStream()throws IOException 返回用于将返回的二进制输出写入客户端的流,此方法和getWrite()方法二者只能调用其一。
Writer getWriter()throws IOException 返回用于将返回的文本输出写入客户端的一个字符写入器,此方法和getOutputStream()二者只能调用其一。
boolean isCommitted() 如果状态和响应头标已经被发回客户端,则返回true,在响应被确认后发送响应头标毫无作用。
void reset() 清除输出缓存及任何响应头标。如果响应已得到确认,则引发事件IllegalStateException。
void setBufferSize(int nBytes) 设置响应的最小缓存大小。实际缓存大小可以更大,可以通过调用getBufferSize()得到。如果输出已被写入,则产生IllegalStateException。
void setContentLength(int length) 设置内容体的长度。
void setContentType(String type) 设置内容类型。在HTTP servlet中即设置Content-Type头标。
void setLocale(Locale locale) 设置响应使用的现场。在HTTP servlet中,将对Content-Type头标取值产生影响。
七、javax.servlet.http.HttpServletResponse接口(HTTP版本)
HttpServletResponse加入表示状态码、状态信息和响应头标的方法,它还负责对URL中写入一Web页面的HTTP会话ID进行解码。
HttpServletResponse接口中的方法
void addCookie(Cookie cookie) 将一个Set-Cookie头标加入到响应。
void addDateHeader(String name,long date) 使用指定日期值加入带有指定名字(或代换所有此名字头标)的响应头标的方法。
void setHeader(String name,String value) 设置具有指定名字和取值的一个响应头标。
void addIntHeader(String name,int value) 使用指定整型值加入带有指定名字的响应头标(或代换此名字的所有头标)。
boolean containsHeader(String name) 如果响应已包含此名字的头标,则返回true。
String encodeRedirectURL(String url) 如果客户端不知道接受cookid,则向URL加入会话ID。第一种形式只对在sendRedirect()中使用的URL进行调用。其他被编码的 URLs应被传递到encodeURL()
String encodeURL(String url)
void sendError(int status) 设置响应状态码为指定值(可选的状态信息)。HttpServleetResponse定义了一个完整的整数常量集合表示有效状态值。
void sendError(int status,String msg)
void setStatus(int status) 设置响应状态码为指定指。只应用于不产生错误的响应,而错误响应使用sendError()。
八、javax.servlet.ServletContext接口
一个servlet上下文是servlet引擎提供用来服务于Web应用的接口。Servlet上下文具有名字(它属于Web应用的名字)唯一映射到文件系统的一个目录。
一个servlet可以通过ServletConfig对象的getServletContext()方法得到servlet上下文的引用,如果servlet直接或间接调用子类GenericServlet,则可以使用getServletContext()方法。
Web应用中servlet可以使用servlet上下文得到:
1.在调用期间保存和检索属性的功能,并与其他servlet共享这些属性。
2.读取Web应用中文件内容和其他静态资源的功能。
3.互相发送请求的方式。
4.记录错误和信息化消息的功能。
ServletContext接口中的方法
Object getAttribute(String name) 返回servlet上下文中具有指定名字的对象,或使用已指定名捆绑一个对象。从Web应用的标准观点看,这样的对象是全局对象,因为它们可以被同一 servlet在另一时刻访问。或上下文中任意其他servlet访问。
void setAttribute(String name,Object obj) 设置servlet上下文中具有指定名字的对象。
Enumeration getAttributeNames() 返回保存在servlet上下文中所有属性名字的枚举。
ServletContext getContext(String uripath) 返回映射到另一URL的servlet上下文。在同一服务器中URL必须是以“/”开头的绝对路径。
String getInitParameter(String name) 返回指定上下文范围的初始化参数值。此方法与ServletConfig方法名称不一样,后者只应用于已编码的指定servlet。此方法应用于上下文中所有的参数。
Enumeration getInitParameterNames() 返回(可能为空)指定上下文范围的初始化参数值名字的枚举值。
int getMajorVersion() 返回此上下文中支持servlet API级别的最大和最小版本号。
int getMinorVersion()
String getMimeType(String fileName) 返回指定文件名的MIME类型。典型情况是基于文件扩展名,而不是文件本身的内容(它可以不必存在)。如果MIME类型未知,可以返回null。
RequestDispatcher getNameDispatcher(String name) 返回具有指定名字或路径的servlet或JSP的RequestDispatcher。如果不能创建RequestDispatch,返回null。如果指定路径,必须心“/”开头,并且是相对于servlet上下文的顶部。
RequestDispatcher getNameDispatcher(String path)
String getRealPath(String path) 给定一个URI,返回文件系统中URI对应的绝对路径。如果不能进行映射,返回null。
URL getResource(String path) 返回相对于servlet上下文或读取URL的输入流的指定绝对路径相对应的URL,如果资源不存在则返回null。
InputStream getResourceAsStream(String path)
String getServerInfo() 返顺servlet引擎的名称和版本号。
void log(String message)
void log(String message,Throwable t) 将一个消息写入servlet注册,如果给出Throwable参数,则包含栈轨迹。
void removeAttribute(String name) 从servlet上下文中删除指定属性。
九、javax.servlet.http.HttpSession接口
HttpSession类似于哈希表的接口,它提供了setAttribute ()和getAttribute()方法存储和检索对象。HttpSession提供了一个会话ID关键字,一个参与会话行为的客户端在同一会话的请求中存储和返回它。servlet引擎查找适当的会话对象,并使之对当前请求可用。
HttpSession接口中的方法
Object getAttribute(String name) 将会话中一个对象保存为指定名字,返回或删除前面保存的此名称对象。
void setAttribute(String name,Object value)
void removeAttribute(String name)
Enumeration getAttributeName() 返回捆绑到当前会话的所有属性名的枚举值。
long getCreationTime() 返回表示会话创建和最后访问日期和时间的一个长整型,该整型形式为java.util.Date()构造器中使用的形式。
long getLastAccessedTime()
String getId() 返回会话ID,servlet引擎设置的一个唯一关键字。
ing getMaxInactiveInterval() 如果没有与客户端发生交互,设置和返回会话存活的最大秒数。
void setMasInactiveInterval(int seconds)
void invalidate() 使得会话被终止,释放其中任意对象。
boolean isNew() 如果客户端仍未加入到会话,返回true。当会话首次被创建,会话ID被传入客户端,但客户端仍未进行包含此会话ID的第二次请示时,返回true。
分享到:
相关推荐
### Servlet+API+中文版知识点解析 #### 一、Servlet基础概念 - **Servlet定义**:Servlet是一种Java技术,用于创建动态网页。它允许开发者在服务器端处理客户端请求,并生成响应。Servlet通常作为Web应用程序的...
`ServletAPI中文版.chm`是Servlet API的中文帮助文档,可以离线浏览,通过目录结构快速查找所需API信息。`servletAPI(HTML版)`可能是另一种格式的Servlet API文档,可能包含更详尽的HTML网页形式,适合在浏览器中...
JSP最终会被编译成Servlet,因此JSP和ServletAPI有着紧密的联系。 CHM文件是一种常见的帮助文档格式,它是Microsoft HTML Help的压缩格式,包含了索引、目录和HTML页面,便于离线查看。在这个案例中,Servlet API的...
这个压缩包包含Servlet API的中文版和英文版,为开发者提供了方便的学习资源。下面将详细介绍Servlet API的主要内容及其重要性。 1. **Servlet接口**:Servlet API的核心是Servlet接口,它定义了服务器端程序需要...
Servlet API是Java Web开发中的核心组件,主要用于构建动态web应用程序。这个API定义了一组接口和类,使得服务器端能够处理HTTP请求并返回响应。本文将详细介绍Servlet API中的关键概念和重要类,特别是`Servlet`...
包含翻译后的API文档:javax.servlet-api-4.0.0-javadoc-API文档-中文(简体)版.zip; Maven坐标:javax.servlet:javax.servlet-api:4.0.0; 标签:javax、servlet、api、中文文档、jar包、java; 使用方法:解压翻译...
这个文档是Servlet API的中文版,对于中文使用者来说,更便于理解和学习。 1. **Servlet 接口**:Servlet 接口是所有Servlet类的基础,它定义了Servlet必须实现的一系列方法。这些方法包括: - `init...
### Servlet API 中文版在线知识点解析 #### 一、Servlet API 概述 Servlet API 是一个为开发基于 Java 的 Web 应用程序提供标准接口的集合。它定义了一系列的类和接口,允许开发者创建高性能、可扩展的Web应用。...
这个压缩包文件包含了Servlet API的中文版文档,方便开发者理解和使用Servlet技术。 1. **Servlet概览** - Servlet是Java编程语言中的一种接口,它允许服务器动态扩展其功能,用于生成动态网页内容。 - Servlet ...
包含翻译后的API文档:jakarta.servlet-api-4.0.4-javadoc-API文档-中文(简体)版.zip; Maven坐标:jakarta.servlet:jakarta.servlet-api:4.0.4; 标签:servlet、api、jakarta、jar包、java、中文文档; 使用方法:...
在Servlet API 2.1的中文版文档中,可能包含以下内容: - Servlet的生命周期管理:详细解释了Servlet如何被加载、初始化、服务以及销毁的过程。 - 请求和响应处理:解释了如何通过HttpServletRequest和...
这是一份关于2.1版Java Servlet API的说明文档,作为对这本文档的补充。 1.2 谁需要读这份文档 这份文档描述了Java Servlet API的最新版本2.1版。所以,这本书对于Servlet的开发者及servlet引擎的开发者同样...
Servlet API 中文版.mhtServlet API 中文版.mhtServlet API 中文版.mhtServlet API 中文版.mhtServlet API 中文版.mht
### Java Servlet API中文版帮助文档知识点详解 #### 一、Java Servlet API简介 **Java Servlet API** 是一种标准的应用程序接口(API),主要用于构建能够处理客户端请求并生成动态Web内容的服务器端应用程序。该...
这个“Servlet API 中文参考 chm版.rar”文件包含了一份关于Servlet API的中文参考文档,对于学习和理解Servlet技术至关重要。以下是对Servlet API及其相关概念的详细解释: 1. **Servlet**: Servlet是一种Java类,...
这个"Servlet API中文版"帮助文档是Java和JSP开发者的重要参考资料,详细解释了Servlet API的各种接口、类和方法。 在Servlet API中,最重要的类之一是`javax.servlet.Servlet`,它是所有Servlet的抽象基类。...
ServletAPI中文版文档,有需要的就拿走吧。
JSP Servlet API中文CHM文件则提供了关于这个API的中文文档,帮助开发者理解和使用Servlet技术。在Java Web应用程序中,Servlet API扮演着服务器端编程的核心角色,允许开发者创建动态网页并处理来自客户端的请求。 ...