zoukankan      html  css  js  c++  java
  • java HttpServletRequest和HttpServletResponse詳解

    這篇文章主要介紹瞭java HttpServletRequest和HttpServletResponse詳解的相關資料,需要的朋友可以參考下

    java HttpServletRequest和HttpServletResponse詳解

    最近由於CAS相關的JAR包的重新封裝,所以想盡量做到0配置,而這個過程中大量使

    用HttpServletRequest,現在整理如下,以便以後查閱。(表格為從別的地方復制的,排版渣瞭點,酬和看吧。)

    請求與響應相關的類和接口非常多,下表是主要的與請求和接口相關的類以及接口。

    主要的與請求和接口相關的類及接口

    方法

    說明

    ServletInputStream

    Servlet的輸入流

    ServletOutputStream

    Servlet的輸出流

    ServletRequest

    代表Servlet請求的一個接口

    ServletResponse

    代表Servlet響應的一個接口

    ServletRequestWrapper

    該類實現ServletRequest接口

    ServletResponseWrapper

    該類實現ServletResponse接口

    HttpServletRequest

    繼承瞭ServletRequest接口,表示HTTP請求

    HttpServletResponse

    繼承瞭ServletResponse接口,表示HTTP請求

    HttpServletRequestWrapper

    HttpServletRequest的實現

    HttpServletResponseWrapper

    HttpServletResponse的實現

    在上面給出的類和接口中,最主要的是HttpServletRequest和HttpServletResponse接口,下面將詳細介紹這兩個接口。

    1.HttpServletRequest

    HttpServletRequest接口最常用的方法就是獲得請求中的參數,這些參數一般是客戶端表單中的數據。同時,HttpServletRequest接口可以獲取由客戶端傳送的名稱,也可以獲取產生請求並且接收請求的服務器端主機名及IP地址,還可以獲取客戶端正在使用的通信協議等信息。下表是接口HttpServletRequest的常用方法。

    說明:HttpServletRequest接口提供瞭很多的方法。

    接口HttpServletRequest的常用方法

    方法

    說明

    getAttributeNames()

    返回當前請求的所有屬性的名字集合

    getAttribute(String name)

    返回name指定的屬性值

    getCookies()

    返回客戶端發送的Cookie

    getsession()

    返回和客戶端相關的session,如果沒有給客戶端分配session,則返回null

    getsession(boolean create)

    返回和客戶端相關的session,如果沒有給客戶端分配session,則創建一個session並返回

    getParameter(String name)

    獲取請求中的參數,該參數是由name指定的

    getParameterValues(String name)

    返回請求中的參數值,該參數值是由name指定的

    getCharacterEncoding()

    返回請求的字符編碼方式

    getContentLength()

    返回請求體的有效長度

    getInputStream()

    獲取請求的輸入流中的數據

    getMethod()

    獲取發送請求的方式,如get、post

    getParameterNames()

    獲取請求中所有參數的名字

    getProtocol()

    獲取請求所使用的協議名稱

    getReader()

    獲取請求體的數據流

    getRemoteAddr()

    獲取客戶端的IP地址

    getRemoteHost()

    獲取客戶端的名字

    getServerName()

    返回接受請求的服務器的名字

    getServerPath()

    獲取請求的文件的路徑

    2.HttpServletResponse

    在Servlet中,當服務器響應客戶端的一個請求時,就要用到HttpServletResponse接口。設置響應的類型可以使用setContentType()方法。發送字符數據,可以使用getWriter()返回一個對象。下表是接口HttpServletResponse的常用方法。

    接口HttpServletResponse的常用方法

    方法

    說明

    addCookie(Cookie cookie)

    將指定的Cookie加入到當前的響應中

    addHeader(String name,String value)

    將指定的名字和值加入到響應的頭信息中

    containsHeader(String name)

    返回一個佈爾值,判斷響應的頭部是否被設置

    encodeURL(String url)

    編碼指定的URL

    sendError(int sc)

    使用指定狀態碼發送一個錯誤到客戶端

    sendRedirect(String location)

    發送一個臨時的響應到客戶端

    setDateHeader(String name,long date)

    將給出的名字和日期設置響應的頭部

    setHeader(String name,String value)

    將給出的名字和值設置響應的頭部

    setStatus(int sc)

    給當前響應設置狀態碼

    setContentType(String ContentType)

    設置響應的MIME類型

    感謝閱讀,希望能幫助到大傢,謝謝大傢對本站的支持!

    from: http://www.15jb.net/java-httpservletrequest%E5%92%8Chttpservletresponse%E8%A9%B3%E8%A7%A3

  • 相关阅读:
    聊一聊所谓的B端C化
    NetCore3.1IIS其他网站出现HTTP503无法访问解决办法
    技术方案模板 fn
    技术方案模板
    composer的常用操作(composer 2.2.1)
    thinkphp6: 用validate验证参数合法性(thinkphp 6.0.9/php 8.0.14)
    thinkphp6: 从6.0.9升级(php 8.0.14)到 6.0.10lts版本(php 8.1.1)
    thinkphp6: 自定义配置文件(php 8.1.1 / thinkphp v6.0.10LTS)
    linux(ubuntu21.10):为chrome安装jsonvue(chrome 96)
    thinkphp6:mysql数据库使用事务(php 8.1.1 / thinkphp v6.0.10LTS)
  • 原文地址:https://www.cnblogs.com/GarfieldEr007/p/7045690.html
Copyright © 2011-2022 走看看