Servlet學習筆記心得

1、初步入門:html

init 方法被設計成只調用一次。它在第一次建立 Servlet 時被調用,在後續每次用戶請求時再也不調用。瀏覽器

service() 方法是執行實際任務的主要方法。Servlet 容器(即 Web 服務器)調用 service() 方法來處理來自客戶端(瀏覽器)的請求,並把格式化的響應寫回給客戶端。服務器

每次服務器接收到一個 Servlet 請求時,服務器會產生一個新的線程並調用服務。service() 方法檢查 HTTP 請求類型(GET、POST、PUT、DELETE 等),並在適當的時候調用 doGet、doPost、doPut,doDelete 等方法。ide

service() 方法由容器調用,service 方法在適當的時候調用 doGet、doPost、doPut、doDelete 等方法。因此,您不用對 service() 方法作任何動做,只須要根據來自客戶端的請求類型來重載 doGet() 或 doPost() 便可。post

doGet() 和 doPost() 方法是每次服務請求中最經常使用的方法:分別用來響應來自客戶端即瀏覽器端的get和post請求。編碼

doGet() 和 doPost() 方法中通常要調用url

HttpServletRequest request,HttpServletResponse response

利用這兩個對象中的方法來實現想達到的功能。spa

eg:線程

public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
            throws ServletException, IOException
  {
      // 設置響應內容類型
      response.setContentType("text/html");

      // 實際的邏輯是在這裏
      PrintWriter out = response.getWriter();
      out.println("<h1>" + message + "</h1>");
  }


不少狀況下,須要傳遞一些信息,從瀏覽器到 Web 服務器,最終到後臺程序。瀏覽器使用兩種方法可將這些信息傳遞到 Web 服務器,分別爲 GET 方法和 POST 方法。設計

GET 方法向頁面請求發送已編碼的用戶信息。頁面和已編碼的信息中間用 ? 字符分隔,以下所示:

http://www.test.com/hello?key1=value1&key2=value2

POST 方法打包信息的方式與 GET 方法基本相同,可是 POST 方法不是把信息做爲 URL 中 ? 字符後的文本字符串進行發送,而是把這些信息做爲一個單獨的消息。消息以標準輸出的形式傳到後臺程序,您能夠解析和使用這些標準輸出。Servlet 使用 doPost() 方法處理這種類型的請求。

使用 Servlet 讀取表單數據

Servlet 處理表單數據,這些數據會根據不一樣的狀況使用不一樣的方法自動解析:

  • getParameter():調用 request.getParameter() 方法來獲取表單參數的值。

  • getParameterValues():若是參數出現一次以上,則調用該方法,並返回多個值,例如複選框。

  • getParameterNames():若是您想要獲得當前請求中的全部參數的完整列表,則調用該方法。

相關文章
相關標籤/搜索