• ServletRequest接口

定义

public interface ServletRequest

定义一个 Servlet 引擎产生的对象,通过这个对象, Servlet 可以获得客户端请求的数据 。这个对象通过读取请求体的数据提供包括参数的名称、值和属性以及输入流的所有数据。



方法

1、getAttribute

public Object getAttribute(String name);

返回请求中指定属性的值,如果这个属性不存在,就返回一个空值。这个方法允许访问一些不提供给这个接口中其他方法的请求信息以及其他 Servlet 放置在这个请求对象内的数据。

2、getAttributeNames

public Enumeration getAttributeNames();

返回包含在这个请求中的所有属性名的列表。

3、getCharacterEncoding

public String getCharacterEncoding();

返回请求中输入内容的字符编码类型,如果没有定义字符编码类型就返回空值。

4、getContentLength

public int getContentLength();

请求内容的长度,如果长度未知就返回-1。

5、getContentType

public String getContentType();

返回请求数据体的 MIME 类型,如果类型未知返回空值。

6、getInputStream

public ServletInputStream getInputStream() throws IOException;

返回一个输入流用来从请求体读取二进制数据。如果在此之前已经通过 getReader 方法获得了要读取的结果,这个方法会抛出一个 IllegalStateException。

7、getParameter

public String getParameter(String name);

以一个 String 返回指定的参数的值, 如果这个参数不存在返回空值。 例如, 在一个 HTTPServlet 中,这个方法会返回一个指定的查询语句产生的 参数的值或一个被提交的表单中的参数值。如果一个参数名对应着几个参数值,这个方法只能返回通过getParameterValues 方法返回的数组中的 第一个值。因此,如果这个参数有(或者可能有)多个值,你只能使用getParameterValues 方法。

8、getParameterNames

public Enumeration getParameterNames();

返回所有参数名的 String 对象列表,如果没有输入参数,该方法返回一个空值。

9、getParameterValues

public String[] getParameterValues(String name);

通过一个 String 对象的数组返回指定参数的值,如果这个参数不存在,该方法返回一个空值。

10、getProtocol

public String getProtocol();

返回这个请求所用的协议,其形式是协议/主版本号.次版本号。例如对于一个 HTTP1.0的请求,该方法返回 HTTP/1.0。

11、getReader

public BufferedReader getReader() throws IOException;

这个方法返回一个 buffered reader 用来读取请求体的实体,其编码方式依照请求数据的编码方式。如果这个请求的输入流已经被 getInputStream 调用获得,这个方法会抛出一个IllegalStateException。

12、getRemoteAddr

public String getRemoteAddr();

返回发送请求者的 IP 地址。

13、getRemoteHost

public String getRemoteHost();

返回发送请求者的主机名称。如果引擎不能或者选择不解析主机名(为了改善性能) ,这个方法会直接返回 IP 地址。

14、getScheme

public String getScheme();

返回请求所使用的 URL 的模式。例如,对于一个 HTTP 请求,这个模式就是 http。

15、getServerName

public String getServerName();

返回接收请求的服务器的主机名。

16、getServerPort

public int getServerPort();

返回接收请求的端口号。

17、setAttribute

public void setAttribute(String name, Object object);

这个方法在请求中添加一个属性,这个属性可以被其他可以访问这个请求对象的对象(例如一个嵌套的 Servlet)使用。注:以下方法将被取消

getRealPath

public String getRealPath(String path);

返回与虚拟路径相对应的真实路径,如果因为某种原因,这一过程不能进行,该方法将返回一个空值。这个方法和ServletContext 接口中的 getRealPath 方法重复。在 2.1 版中,ServletContext接口将阐明一个 Servlet 所能用的所有的路径的映射。该方法执行的结果将会与ServletContext 中 getRealPath 方法的结果完全一样。

18,getRequestDispatcher

public abstract RequestDispatcher getRequestDispatcher(String paramString);获得服务器转发对象。



  • ServletResponse接口

定义

public interface ServletResponse

定义一个 Servlet 引擎产生的对象,通过这个对象,Servlet 对客户端的请求作出响应。这个响应应该是一个 MIME 实体,可能是一个 HTML 页、图象数据或其他 MIME 的格式。



方法

1、getCharacterEncoding

public String getCharacterEncoding();

返回 MIME 实体的字符编码。这个字符编码可以是指定的类型,也可以是与请求头域所反映的客户端所能接受的字符编码最匹配的类型。在 HTTP 协议中,这个信息被通过Accept-Charset 传送到 Servlet 引擎。有关字符编码和 MIME 的更多信息请参看 RFC 2047。

2、getOutputStream

public ServletOutputStream getOutputStream() throws IOException;

返回一个记录二进制的响应数据的输出流。如果这个响应对象已经调用 getWriter,将会抛出 IllegalStateException。

3、getWriter

public PrintWriter getWriter throws IOException;

这个方法返回一个 PringWriter 对象用来记录格式化的响应实体。如果要反映使用的字符编码, 必须修改响应的 MIME 类型。在调用这个方法之前, 必须设定响应的 content 类 型 。如果没有提供这样的编码类型,会抛出一个UnsupportedEncodingException,如果这个响应对象已调用 getOutputStream,会抛出一个 getOutputStream。

4、setContentLength

public void setContentLength(int length);

设置响应的内容的长度,这个方法会覆盖以前对内容长度的设定。为了保证成功地设定响应头的内容长度,在响应被提交到输出流之前必须调用这个方法。

5、setContentType

public void setContentType(String type);

这个方法用来设定响应的 content 类型。这个类型以后可能会在另外的一些情况下被隐式地修改,这里所说的另外的情况可能当服务器发现有必要的情况下对 MIME 的字符设置 。为了保证成功地设定响应头的 content 类型,在响应被提交到输出流之前必须调用这个方法。

Servlet--ServletRequest接口,ServletResponse接口的更多相关文章

  1. Java EE javax.servlet中的ServletResponse接口

    ServletResponse接口 public interface ServletResponse 子接口:HttpServletResponse 实现类:HttpServletResponseWr ...

  2. Servlet基本用法二接口和类

    转自:http://www.cnblogs.com/xujian2014/p/4536168.html 一.摘要 本文主要简单介绍开发Servlet需要用到的接口和类. 二.ServletReques ...

  3. Servlet(5)—ServletRequest接口和ServletResponse接口

    ServletRequest接口: 使用ServletRequest接口创建对象,用于使客户端请求信息对Servlet可用,创建的对象作为参数传递之Servlet的Service() ServletR ...

  4. javaWEB中的ServletRequest,ServletResponse的使用,及简化Servlet方法

    首先说一下ServletRequest,ServletResponse类的使用方法: public void service(ServletRequest request, ServletRespon ...

  5. servlet之ServletRequest与ServletResponse (三)

    ·servlet的service()方法用于应答请求:每次请求都会调用service()方法 public void service(ServletRequest arg0, ServletRespo ...

  6. JavaWeb知识回顾-Servlet常用类、接口及其方法

    今天主要把servlet的一些常用的类.接口和方法简单回顾一下. javax.servlet包 1.javax.servlet.Servlet接口 接口用于开发servlet,所有的servlet都要 ...

  7. Servlet请求转发RequestDispatcher接口

    在Servlet中,利用RequestDispatcher对象,可以将请求转发给另外一个Servlet或JSP页面,甚至是HTML页面,来处理对请求的响应. 一,RequestDispatcher接口 ...

  8. Servlet请求转发 RequestDispatcher接口.RP

    在Servlet中,利用RequestDispatcher对象,可以将请求转发给另外一个Servlet或JSP页面,甚至是HTML页面,来处理对请求的响应. 一,RequestDispatcher接口 ...

  9. Java EE javax.servlet中的RequestDispatcher接口

    RequestDispatcher接口 public interface RequestDispatcher 一.介绍 定义一个对象,从客户端接收请求并将其发送到服务器上的任何资源(例如servlet ...

随机推荐

  1. 阿里mysql同步工具otter的docker镜像

    https://github.com/dearplain/otter_manager https://github.com/dearplain/otter_node 本人开发的小巧docker镜像,根 ...

  2. 浅谈JavaScript的面向对象程序设计(四)

    本文继续讲解JavaScript的面向对象程序设计.继承是面向对象语言中的一个基本概念,面向对象语言支持两种继承实现方式:接口继承和实现继承.接口继承只继承方法签名,而实现继承则继承实际的方法.但是在 ...

  3. 【Docker】安装Docker及基本使用

    该文以CentOS系统为例,介绍Docker安装及基本使用.为了简化安装流程,Docker 官方提供了一套安装脚本,CentOS 系统上可以使用这套脚本安装: curl -sSL https://ge ...

  4. 强化学习 - Q-learning Sarsa 和 DQN 的理解

    本文用于基本入门理解. 强化学习的基本理论 : R, S, A 这些就不说了. 先设想两个场景:  一. 1个 5x5 的 格子图, 里面有一个目标点,  2个死亡点二. 一个迷宫,   一个出发点, ...

  5. Django的生命周期图解

    下边的图就是一次完整的django生命周期,从客户端输入url,经过wsgi模块处理,得到符合HTTP协议的字符串,走中间件,假如中间件return None,继续往下走到urls......; 假如 ...

  6. Mvc 模板化的Razor引擎委托

    最近在研究NopCommerce,它后台用的富文本编辑器可根据语言库加载不同语言的编辑器,其中用到了模板化Razor引擎委托,参考这儿 废话不多说,直接上代码. public static class ...

  7. bzoj:1230: [Usaco2008 Nov]lites 开关灯

    Description Farmer John尝试通过和奶牛们玩益智玩具来保持他的奶牛们思维敏捷. 其中一个大型玩具是牛栏中的灯. N (2 <= N <= 100,000) 头奶牛中的每 ...

  8. [51nod1291]Farmer

    用单调栈的话不严格的O(n^3)可以轻松艹过去,统计的时候要差分. 可以发现,对于一个单调栈里的元素,从它进栈到出栈都会重复类似的计算..再差分一波后就可以只在出栈的时候计算一下了. 具体的话看代码吧 ...

  9. Python数据类型一:数字与运算符

    数字 一.数值类型 python中支持的数值类型有以下几种: 1.整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点.Python3 整型是没有限制大小的,可以当作 Long 类型使 ...

  10. Spark算子--mapPartitions和mapPartitionsWithIndex

    mapPartitions--Transformation类算子 代码示例 result   mapPartitionsWithIndex--Transformation类算子 代码示例 result ...