Servlet Response
ServletResponse
介面提供了一系列方法來設定和取得 HTTP 回應的資訊。一個 ServletResponse
實例代表了一個 HTTP 回應,而這個回應可以包含一些 HTML 等內容和一些狀態訊息,如 HTTP 狀態碼和頭資訊。
回應體
使用 ServletResponse
接口,你可以輕鬆地向客戶端發送回應體。響應體是 HTTP 回應的主要內容,可以是 HTML、CSS、JavaScript、文字或其他資料類型。以下是一些常用的方法:
void setContentType(String type)
:設定回應體的類型。例如,如果要傳回 HTML 內容,則可以使用text/html
作為type
的值。void setCharacterEncoding(String encoding)
:設定回應體的字元編碼。例如,如果要傳回 UTF-8 編碼的 HTML 內容,則可以使用UTF-8
作為encoding
的值。PrintWriter getWriter()
:取得一個PrintWriter
實例,用於傳送字元資料到客戶端。ServletOutputStream getOutputStream()
:取得一個ServletOutputStream
實例,用於傳送位元組資料到客戶端。
下面是一個範例程式碼,程式碼會傳送一個包含HTML 內容的回應給客戶端:
@WebServlet("/example") public class ExampleServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Example Servlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h2 id="Hello-nbsp-world">Hello, world!</h2>"); out.println("</body>"); out.println("</html>"); } }
在上面的程式碼中,我們首先使用response.setContentType("text/html")
方法設定響應體的類型為HTML。然後,我們使用 response.setCharacterEncoding("UTF-8")
方法設定響應體的字元編碼為 UTF-8。接著,我們使用 response.getWriter()
方法取得一個 PrintWriter
實例,然後使用 out.println()
方法向客戶端傳送 HTML 內容。
回應頭
除了回應體,HTTP 回應還可以包含一些元數據,例如回應頭資訊。回應頭資訊提供了一些有關回應的附加訊息,如反應體的類型、字元編碼、過期時間等。使用 ServletResponse
接口,你也可以輕鬆地設定和取得回應頭資訊。以下是一些常用的方法:
void setHeader(String name, String value)
:設定回應頭資訊。例如,如果要設定Content-Disposition
頭訊息,則可以使用Content-Disposition
作為name
的值,attachment; filename="example. txt"
作為value
的值。void addHeader(String name, String value)
:新增回應頭資訊。例如,如果要新增Cache-Control
頭訊息,則可以使用Cache-Control
作為name
的值,no-cache
作為value
的值。void setIntHeader(String name, int value)
:設定回應頭訊息,值為一個整數。例如,如果要設定Content-Length
頭訊息,則可以使用Content-Length
作為name
的值,檔案大小作為value
的值。void addIntHeader(String name, int value)
:新增回應頭訊息,值為一個整數。例如,如果要新增Expires
頭訊息,則可以使用Expires
作為name
的值,時間戳記作為value
的值。String getHeader(String name)
:取得指定名稱的回應頭資訊。例如,如果要取得Content-Type
頭信息,則可以使用Content-Type
作為name
的值。Collection<string> getHeaders(String name)</string>
:取得指定名稱的所有回應頭資訊。例如,如果要取得Set-Cookie
頭訊息,則可以使用Set-Cookie
作為name
的值。int getIntHeader(String name)
:取得指定名稱的整數型回應頭資訊。例如,如果要取得Content-Length
頭訊息,則可以使用Content-Length
作為name
的值。
回應狀態
回應狀態是指 HTTP 回應的狀態碼,表示伺服器對請求的處理結果。使用 ServletResponse
接口,你也可以設定回應狀態碼。以下是一些常用的狀態碼:
200
:表示請求已成功,且伺服器已傳回所要求的資料。302
:表示請求的資源已移至新的位置,並且新的位置已經在回應頭資訊中傳回。404
:表示請求的資源不存在。500
:表示伺服器在處理請求時發生了錯誤。
设置响应状态码的方法如下:
void setStatus(int sc)
:设置响应状态码。例如,如果要设置状态码为 200
,则可以使用 setStatus(200)
。
示例代码
下面是一个示例代码,该代码会向客户端发送一个包含 HTML 内容的响应,并设置响应头信息和状态码:
@WebServlet("/example") public class ExampleServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); response.setStatus(HttpServletResponse.SC_OK); response.setHeader("Cache-Control", "no-cache"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Example Servlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h2 id="Hello-nbsp-world">Hello, world!</h2>"); out.println("</body>"); out.println("</html>"); } }
在上面的代码中,我们使用 HttpServletResponse.SC_OK
设置响应状态码为 200
。然后,我们使用 response.setHeader("Cache-Control", "no-cache")
方法设置 Cache-Control
头信息为 no-cache
。最后,我们使用 out.println()
方法向客户端发送 HTML 内容。
以上是Java Servlet中Response物件如何使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

WebStorm Mac版
好用的JavaScript開發工具