getReader()
在 HTTPServletRequest 中有定義 getReader() 方法,可以讀取一個 BufferedReader 物件。透過這個物件可以讀取請求本體資料。以下有個範例.
1) 首先建立一個HTML表單用來發出請求 (form.html)。Servlet的名稱為body.view
2) 準備好HTML後,現在建立一個 Servlet 命名為 body.view.
1) 首先建立一個HTML表單用來發出請求 (form.html)。Servlet的名稱為body.view
![]() |
Figure 1.1 |
2) 準備好HTML後,現在建立一個 Servlet 命名為 body.view.
package com.learn.servlet; import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/body.view") public class BodyServlet extends HttpServlet { private static final long serialVersionUID = 1L; public BodyServlet() { super(); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String body = readBody(request); PrintWriter out = response.getWriter(); out.println(""); out.println(""); out.println(""); out.println(body); out.println(""); out.println(""); } private String readBody(HttpServletRequest request) throws IOException{ BufferedReader reader = request.getReader(); String input = null; String requestBody = ""; while((input = reader.readLine()) != null) requestBody += input + " "; return requestBody; } }
執行結果如下圖 ![]() |
Figure 1.2 |
沒有留言:
張貼留言