zoukankan      html  css  js  c++  java
  • request对象与response对象

    一.request对象

    1.通过request对象可以获得客户端输入的信息。request对象包含了从客户端传来的请求信息。

    请求的参数是一个请求的组成部分,它们被作为字符串从客户端传送到JSP/Servlet容器中,并被用于初始化request对象。

     

    2.request对象是javax.Servlet.http.HttpServletRequest接口,它主要可用的方法如下:

    1)getCookies()

    该方法返回客户端的Cookie对象数组,这些Cookie对象是javax.servlet.http.Cookie的实例对象。

     

    2)getHeader(String name)

    该方法可以获取http协议所定义的特定的http头文件的信息。name可以使HTTP文件头的名字,例如User-Agent。

     

    3)getAttribute(String name)

    返回绑定在name属性上的值,如果没有,则返回null。

     

    4)getAttributeNames()

    返回和当前的request对象绑定在一起的所有的属性的名字。返回值是一个枚举对象。

     

    5)getHeaderNames()

    使用该方法返回一个枚举对象,包含当前request对象中包含着的每一个http的头文件的名字。

     

    6)getMethod()

    该方法可以返回当前客户端向服务器端传输协议的方式,可能的有POST,GET,PUT等等。

     

    7)getParameter(String name)

    可以获得客户端传输给服务器端得信息。

     

    8)getParameterNames()

    可以获取客户端传输给服务器端所有的参数名字。返回值是一个枚举类型。

     

    9)getParameterValues(String name)

    与getParameter(String name)的不同在于,使用getParameter(String name)只返回name当前的值,而之前的值都被忽略了,而getParameterValue(String name)则会返回所有的值。

     

    10)getQueryString()

    使用该方法可以获得请求字符串,该字符串由客户端以GET方式传向服务器端。

     

    11)getRequestURL()

    getRequestURL()方法可以获得和当前request对象相应的URL地址,有人就说客户端通过浏览器所请求的URL地址。

     

    12)getServletPath()

    该方法可以获得客户端所请求的servlet的地址。

     

    13)setAttribute(String name,Java.lang.Object obj)

    该方法可以将某个参数和目前的request对象绑定起来。

     

    14)getServerName()

    该方法返回服务器的名称。

     

    15)getServerPort()

    用于获取服务器提供的HTTP服务的端口。

     

    16)getRemoteAddr()

    该方法用于获得发送HTTP请求的客户端地址。利用这个方法,我们可以屏蔽来自某些IP地址的访问。

     

    17)getRemoteHost()

    该方法可以获取当前HTTP连接的客户端计算机名称,返回的是IP地址。

     

    18)getProtocol()

    可以获取客户端向服务器端发送信息所遵循的协议名称。

    例如:

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <body bgcolor="white">
    <h1>Request Information</h1>
    <font size="4">
    JSP Request Method: <%out.println(request.getMethod()); %>
    <br>
    Request URI: <%out.println(request.getRequestURI()); %>
    <br>
    Request Protocol: <%out.println(request. getProtocol()); %>
    <br>
    Servlet path: <%out.println(request.getServletPath ()); %>
    <br>
    Path info: <%out.println(request.getPathInfo()); %>
    <br>
    Path translated: <%out.println(request.getPathTranslated()); %>
    <br>
    Query string: <%out.println(request.getQueryString()); %>
    <br>
    Content length: <%out.println(request.getContentLength()); %>
    <br>
    Content type: <%out.println(request.getContentType()); %>
    <br>
    Server name: <%out.println(request.getServerName()); %>
    <br>
    Server port: <%out.println(request.getServerPort()); %>
    <br>
    Remote user: <%out.println(request.getRemoteUser()); %>
    <br>
    Remote address: <%out.println(request.getRemoteAddr()); %>
    <br>
    Remote host: <%out.println(request.getRemoteHost()); %>
    <br>
    Authorization scheme: <%out.println(request.getAuthType()); %>
    <hr>
    The browser you are using is: <%out.println(request.getHeader("User-Agent")); %>
    <hr>
    </font>
    </body>
    </html>
    

    二.response对象

    1.response对象的作用是处理HTTP连接信息,如cookie,HTTP文件头信息等,它有很多功能是和request对象相匹配的。

     

    2.response对象的常用方法:

    1)addCookie(Cookie cookie)

    当用于访问某个站点时,我们可以用此方法添加一个cookie对象,并将它发送到客户端,保存到客户端操作系统的某个特定目录下,用来保存客户的特定信息。当用户再次访问浏览器时,浏览器会自动将这个Cookie对象发送会服务器端,调用request对象的getCookie()方法可以获得所有存在的Cookie对象,getCookie返回的是一个数组。Cookie对于不同的客户来说都是专有的。

     

    2)addHeader(String name,String value)

    addHeader是添加HTTP文件头信息,这些信息将会传到客户端,发送特定的HTTP文件头信息,可以控制客户端和服务器端的连接。

     

    3)containsHeader(String name)

    该方法用于判断指定名字的HTTP文件头是否存在,返回值是布尔类型。

     

    4)sendError(int sc)

    该方法用于向客户端发送错误消息,例如505:服务器内部消息。

     

    5)sendRedirect(String url)

    和<jsp:forward>动作指令的功能一模一样,但是向目标程序传递HTTP参数不是很方便,在使用此方法之前,必须保证JSP程序没有任何可见的输出被送往客户端。

     

    6)setHeader()

    是一个通用的标头设定方法,您可以用它来设定任何「名称/值」的标头.

    7)setIntHeader()

    专门用来设定整数值标头的版本.


    8)setDateHeader()

    是setHeader()的Date设定版本,第二个参数是设定Date的Long数值,0表示GMT 1970/1/1 00:00。

     

    9)setStatus()

    是用来设定回应的状态码,例如404 Not Found,HttpServletResponse类中提供了一些助忆常数设定,例如SC_NOT_FOUND就是表示404状态码(可以在Servlet API文件中查询相关的助忆常数)

    文章来源:http://www.cnblogs.com/karying/archive/2009/10/21/2015408.html

  • 相关阅读:
    更精确地计量程序执行时间(转)
    C++中计算代码的执行时间
    VC实现文件拖拽
    统计程序运行时间的C++源代码
    C++开源库详细介绍
    C++高精度实现计算程序运行时间
    c++计算代码执行时间的方法,毫秒级
    【转】mysql 分析查找执行效率慢的SQL语句
    Chapter 10: Proxy Routing
    Enable remote access to MySQL database server
  • 原文地址:https://www.cnblogs.com/asher/p/2821211.html
Copyright © 2011-2022 走看看