(二)ServletRequest

/**
 * 
 * <p>标题: ServletRequest</p>
 * <p>
 *    功能描述:Servlet由Servlet容器来管理,当客户请求到来时,容器创建一个ServletRequest对象,封装请求数据,
 *    同时创建一个ServletResponse对象,封装响应数据。这两个对象将被容器作为service()方法的参数传递给Servlet,
 *    Servlet利用ServletRequest对象获取客户端发来的请求数据,利用ServletResponse对象发送响应数据。
 *     
 * </p>
 * <p>创建日期: 2016年1月15日 下午3:45:03</p>
 * <p>作者: 年华</p>
 * <p>版本: 1.0</p>
 */
public interface ServletRequest{

   //返回以name为名字的属性的值。如果该属性不存在,这个方法将返回null。
   public Object getAttribute(String name);
   
   //返回请求中所有可用的属性的名字。如果在请求中没有属性,这个方法将返回一个空的枚举集合。
   public Enumeration getAttributeNames();
    
    //回请求正文使用的字符编码的名字。如果请求没有指定字符编码,这个方法将返回null
    public String getCharacterEncoding();
    
    //覆盖在请求正文中所使用的字符编码的名字
    public void setCharacterEncoding(String env) throws java.io.UnsupportedEncodingException;
    
    //以字节为单位,返回请求正文的长度。如果长度不可知,这个方法将返回-1。
    public int getContentLength();
    
    //返回请求正文的MIME类型。如果类型不可知,这个方法将返回null。
    public String getContentType();
    
    //返回一个输入流,使用该输入流以二进制方式读取请求正文的内容。ServletInputStream是一个抽象类,继承自java.io.InputStream。
    public ServletInputStream getInputStream() throws IOException; 
    
    //返回请求中name参数的值。如果name参数有多个值,那么这个方法将返回值列表中的第一个值。如果在请求中没有找到这个参数,这个方法将返回null。
    public String getParameter(String name);
    
    //返回请求中包含的所有的参数的名字。如果请求中没有参数,这个方法将返回一个空的枚举集合。
   public Enumeration getParameterNames();
    
   //返回请求中name参数所有的值。如果这个参数在请求中并不存在,这个方法将返回null。
  public String[] getParameterValues(String name);
    
   //返回请求中包含所有参数的值,key为name,value为值
   public Map getParameterMap();
    
   //返回请求使用的协议的名字和版本,例如:HTTP/1.1。
   public String getProtocol();
    
   //协议头
   public String getScheme();
    
   //返回请求发送到的服务器的主机名。
   public String getServerName();
    
    //返回接收到请求的IP接口的主机名,这个方法是在Servlet 2.4规范中新增的方法。
    public int getServerPort();
    
    //返回BufferedReader对象,以字符数据方式读取请求正文。
    public BufferedReader getReader() throws IOException;
    
    //返回发送请求的客户端或者最后一个代理服务器的IP地址。
    public String getRemoteAddr();
    
    //返回发送请求的客户端或者最后一个代理服务器的完整限定名。
    public String getRemoteHost();
   
    //在请求中保存名字为name的属性。如果第二个参数o为null,那么相当于调用removeAttribute(name)
    public void setAttribute(String name, Object o);
    
    //移除请求中名字为name的属性。
    public void removeAttribute(String name);
    
    //返回接收到请求的网络接口的IP地址,这个方法是在Servlet 2.4规范中新增的方法。
    public Locale getLocale();
    
    //接受客户的地区基于accept - language头。如果客户机请求不提供一个accept - language头,这个方法返回一个枚举包含一个语言环境,服务器的缺省语言环境。
    public Enumeration getLocales();
    
    //返回一个布尔值表示这个请求是否通过一个安全通道,比如HTTPS。
    public boolean isSecure();
    
    //返回RequestDispatcher对象,作为path所定位的资源的封装。
    public RequestDispatcher getRequestDispatcher(String path);
    
    //弃用,使用ServletContext # getRealPath代替。
    public String getRealPath(String path);
    
    //返回发送请求的客户端或者最后一个代理服务器的IP源端口,这个方法是在Servlet 2.4规范中新增的方法
    public int getRemotePort();
    
    //获得本地名称,也就是服务器的名称
    public String getLocalName();
    
    //获得本地IP,也就是服务器的IP地址
    public String getLocalAddr();
    
    //返回接收到请求的网络接口的IP端口号,也就是Tomcat监听的端口,这个方法是在Servlet 2.4规范中新增的方法。
    public int getLocalPort();

}
posted @ 2016-01-18 14:42  姩澕  阅读(193)  评论(0编辑  收藏  举报