doGet是處理客戶端發來的Get請求,doPost是處理客戶端發來的Post請求,它們的區別可以從以下7個方面來說明:
1、客戶端(一般指瀏覽器)生成的方式 get:form中method屬性為get時;或者直接在URL位址列中輸入URL,需要傳遞引數時,直接在URL後面拼接“?name=張三&age=18”這樣的查詢引數字串; post:form中method屬性為post。
2、客戶端資料傳送方式 get:表單資料存放在URL地址後面。所有get方式提交時HTTP中沒有訊息體; post:表單資料存放在HTTP協議的訊息體中以實體的方式傳送到伺服器。
3、伺服器獲取資料方式 get:伺服器採用Servlet中的doGet來獲取變數的值; post:伺服器採用Servlet中的doPost來獲取資料。
4、傳輸的資料量 get:資料量長度有限制,一般不超過2kb。因為是引數傳遞,且在位址列中,故資料量有限制; post:適合大規模的資料傳送。因為是以實體的方式傳送的。
5、安全性 get:安全性差。因為是直接將資料顯示在位址列中,瀏覽器有緩衝,可記錄使用者資訊。所以安全性低; post:安全性高。因為post方式提交資料時是採用的HTTP post機制,是將表單中的欄位與值放置在HTTP HEADER內一起傳送到ACTION所指的URL中,使用者是看不見的。 來源:-servlet
doGet是處理客戶端發來的Get請求,doPost是處理客戶端發來的Post請求,它們的區別可以從以下7個方面來說明:
1、客戶端(一般指瀏覽器)生成的方式 get:form中method屬性為get時;或者直接在URL位址列中輸入URL,需要傳遞引數時,直接在URL後面拼接“?name=張三&age=18”這樣的查詢引數字串; post:form中method屬性為post。
2、客戶端資料傳送方式 get:表單資料存放在URL地址後面。所有get方式提交時HTTP中沒有訊息體; post:表單資料存放在HTTP協議的訊息體中以實體的方式傳送到伺服器。
3、伺服器獲取資料方式 get:伺服器採用Servlet中的doGet來獲取變數的值; post:伺服器採用Servlet中的doPost來獲取資料。
4、傳輸的資料量 get:資料量長度有限制,一般不超過2kb。因為是引數傳遞,且在位址列中,故資料量有限制; post:適合大規模的資料傳送。因為是以實體的方式傳送的。
5、安全性 get:安全性差。因為是直接將資料顯示在位址列中,瀏覽器有緩衝,可記錄使用者資訊。所以安全性低; post:安全性高。因為post方式提交資料時是採用的HTTP post機制,是將表單中的欄位與值放置在HTTP HEADER內一起傳送到ACTION所指的URL中,使用者是看不見的。 來源:-servlet