java HttpServletRequest和HttpServletResponse詳解
java HttpServletRequest和HttpServletResponse詳解
最近由于CAS相關(guān)的JAR包的重新封裝,所以想盡量做到0配置,而這個過程中大量使
用HttpServletRequest,現(xiàn)在整理如下,以便以后查閱。(表格為從別的地方復(fù)制的,排版渣了點,酬和看吧。)
請求與響應(yīng)相關(guān)的類和接口非常多,下表是主要的與請求和接口相關(guān)的類以及接口。
主要的與請求和接口相關(guān)的類及接口
方 法 |
說 明 |
ServletInputStream |
Servlet的輸入流 |
ServletOutputStream |
Servlet的輸出流 |
ServletRequest |
代表Servlet請求的一個接口 |
ServletResponse |
代表Servlet響應(yīng)的一個接口 |
ServletRequestWrapper |
該類實現(xiàn)ServletRequest接口 |
ServletResponseWrapper |
該類實現(xiàn)ServletResponse接口 |
HttpServletRequest |
繼承了ServletRequest接口,表示HTTP請求 |
HttpServletResponse |
繼承了ServletResponse接口,表示HTTP請求 |
HttpServletRequestWrapper |
HttpServletRequest的實現(xiàn) |
HttpServletResponseWrapper |
HttpServletResponse的實現(xiàn) |
在上面給出的類和接口中,最主要的是HttpServletRequest和HttpServletResponse接口,下面將詳細介紹這兩個接口。
1.HttpServletRequest
HttpServletRequest接口最常用的方法就是獲得請求中的參數(shù),這些參數(shù)一般是客戶端表單中的數(shù)據(jù)。同時,HttpServletRequest接口可以獲取由客戶端傳送的名稱,也可以獲取產(chǎn)生請求并且接收請求的服務(wù)器端主機名及IP地址,還可以獲取客戶端正在使用的通信協(xié)議等信息。下表是接口HttpServletRequest的常用方法。
說明:HttpServletRequest接口提供了很多的方法。
接口HttpServletRequest的常用方法
方 法 |
說 明 |
getAttributeNames() |
返回當(dāng)前請求的所有屬性的名字集合 |
getAttribute(String name) |
返回name指定的屬性值 |
getCookies() |
返回客戶端發(fā)送的Cookie |
getsession() |
返回和客戶端相關(guān)的session,如果沒有給客戶端分配session,則返回null |
getsession(boolean create) |
返回和客戶端相關(guān)的session,如果沒有給客戶端分配session,則創(chuàng)建一個session并返回 |
getParameter(String name) |
獲取請求中的參數(shù),該參數(shù)是由name指定的 |
getParameterValues(String name) |
返回請求中的參數(shù)值,該參數(shù)值是由name指定的 |
getCharacterEncoding() |
返回請求的字符編碼方式 |
getContentLength() |
返回請求體的有效長度 |
getInputStream() |
獲取請求的輸入流中的數(shù)據(jù) |
getMethod() |
獲取發(fā)送請求的方式,如get、post |
getParameterNames() |
獲取請求中所有參數(shù)的名字 |
getProtocol() |
獲取請求所使用的協(xié)議名稱 |
getReader() |
獲取請求體的數(shù)據(jù)流 |
getRemoteAddr() |
獲取客戶端的IP地址 |
getRemoteHost() |
獲取客戶端的名字 |
getServerName() |
返回接受請求的服務(wù)器的名字 |
getServerPath() |
獲取請求的文件的路徑 |
2.HttpServletResponse
在Servlet中,當(dāng)服務(wù)器響應(yīng)客戶端的一個請求時,就要用到HttpServletResponse接口。設(shè)置響應(yīng)的類型可以使用setContentType()方法。發(fā)送字符數(shù)據(jù),可以使用getWriter()返回一個對象。下表是接口HttpServletResponse的常用方法。
接口HttpServletResponse的常用方法
方 法 |
說 明 |
addCookie(Cookie cookie) |
將指定的Cookie加入到當(dāng)前的響應(yīng)中 |
addHeader(String name,String value) |
將指定的名字和值加入到響應(yīng)的頭信息中 |
containsHeader(String name) |
返回一個布爾值,判斷響應(yīng)的頭部是否被設(shè)置 |
encodeURL(String url) |
編碼指定的URL |
sendError(int sc) |
使用指定狀態(tài)碼發(fā)送一個錯誤到客戶端 |
sendRedirect(String location) |
發(fā)送一個臨時的響應(yīng)到客戶端 |
setDateHeader(String name,long date) |
將給出的名字和日期設(shè)置響應(yīng)的頭部 |
setHeader(String name,String value) |
將給出的名字和值設(shè)置響應(yīng)的頭部 |
setStatus(int sc) |
給當(dāng)前響應(yīng)設(shè)置狀態(tài)碼 |
setContentType(String ContentType) |
設(shè)置響應(yīng)的MIME類型 |
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Java設(shè)計模式之觀察者模式(Observer Pattern)詳解
觀察者模式(Observer Pattern)是一種行為型設(shè)計模式,它定義了一種一對多的依賴關(guān)系,當(dāng)一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都能夠自動地得到通知并進行更新,本文將詳細的給大家介紹一下Java觀察者模式,需要的朋友可以參考下2023-07-07Java調(diào)用Zookeeper的實現(xiàn)步驟
本文主要介紹了Java調(diào)用Zookeeper的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08詳解SpringBoot應(yīng)用服務(wù)啟動與安全終止
這篇文章主要介紹了SpringBoot應(yīng)用服務(wù)啟動與安全終止,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04淺析SpringBoot多數(shù)據(jù)源實現(xiàn)方案
現(xiàn)在很多項目的開發(fā)過程中,可能涉及到多個數(shù)據(jù)源,像讀寫分離的場景,或者因為業(yè)務(wù)復(fù)雜,導(dǎo)致不同的業(yè)務(wù)部署在不同的數(shù)據(jù)庫上,那么這樣的場景,我們應(yīng)該如何在代碼中簡潔方便的切換數(shù)據(jù)源呢,本文介紹SpringBoot多數(shù)據(jù)源實現(xiàn)方案,感興趣的朋友跟隨小編一起看看吧2024-02-02