servlet中的doget 與dopost 是怎樣工作

2021-08-29 07:55:11 字數 2070 閱讀 8498

1樓:匿名使用者

•採用post方法向伺服器傳送命名引數時,與採用get方法幾乎一樣的。

•區別:post方法將引數串放在請求體中傳送,而get方法是將引數追加到url中傳送。

•如果資料處理不改變資料模型的狀態,html使用規約理論上推薦採用get方法,從這

可以看出,獲取資料時應當使用get方法。

•如果因為儲存、更新資料,或者傳送電子郵件,操作改變了資料模型的狀態,這時建議使 用post方法。

2樓:小傻

servlet中的doget()與dopost()工作的方式如下:

1.doget

get呼叫用於獲取伺服器資訊,並將其做為響應返回給客戶端。當經由web瀏覽器或通過html、jsp直接訪問servlet的url時,一般用get呼叫。get呼叫在url裡顯示正傳送給servlet的資料,這在系統的安全方面可能帶來一些問題,比如使用者登入,表單裡的使用者名稱和密碼需要傳送到伺服器端,若使用get呼叫,就會在瀏覽器的url中顯示使用者名稱和密碼。

例:jsp頁**:

}這樣提交表單後,引數會自動新增到瀏覽器位址列中,帶來安全性問題。同時,get適合於傳送少量資料。

2.dopost

它用於客戶端把資料傳送到伺服器端,也會有***。但好處是可以隱藏傳送給伺服器的任何資料。post適合傳送大量的資料。

例:jsp頁**:

}3.可以把方法寫在doget()方法中,在dopost()方法中呼叫執行,這樣,無論你提交的是post還是get方法都可以執行

例如:jsp頁**:

}另外,httpservlet處理客戶端請求方式還有doput、dodelete、dotrace、dohead、dooptions,但使用的比較少。

3樓:匿名使用者

他們的呼叫關係是這樣的:

1、請求中,我們已經可以很明確的知道是get,還是post型別的請求。

即dopost()與doget()本身的區別只是在對於請求中的相對應的呼叫。

2、根據型別進行呼叫相應的方法

3、如果你只是實現了某一個方法,那麼你將在另外一箇中去呼叫你實現的方法,此時就完成了方法間的呼叫。

並不存在父類與子類,因為我們不會應用它們本身,而會是我們自己的業務邏輯處理。

所以,這裡就不會用到 super.doget();,或者super.dopost();了,只會是方法的相互呼叫doget();或者dopost();。

不知道這樣的回答是否解除了你的疑惑呢?

4樓:匿名使用者

spacelishuai 正解,

如果走的是serlvet,而servlet裡又沒有顯示的呼叫父類方法,這就必定是走子

類過載的doget() dopost() 了,這兩個方法沒什麼區別,要看你提交過來的方

式是什麼方式,form表單裡的

method屬性是get還是post,用get方法提交有字元限制,只能是255個字元,並

且在位址列裡不隱藏連結,也就是說你用get方式提交使用者名稱密碼的話在url地址

欄裡是可以完全的看到的,post提交沒有提交大小限制,並且隱藏位址列資訊,

相對安全。

一般來說都會在doget()方法裡呼叫dopost()方法,引數是一樣的引數,處理的結果也是一樣的:

myeclipse中servlet時如何生成service方法

無法生成的。解釋 servlet需要繼承的方法是doget 和dopost 方法,沒有 service 方法的。可能原因是server方法是使用者自定義方法,根據實際需要新增個server方法即可。方法樣例如下面 public void server 你有右鍵 source override imp...

請教servlet如何得到jsp頁面中迴圈裡input標籤

樓主可以這樣考慮 每次迴圈的時候 然後你在調方法的時候把count傳進去 最後在servlet裡。這樣取值 href count 在servlet裡 int count integer.valueof request.getpatemeter count string value request.g...

servlet的生命週期是什麼,Servlet的生命週期是什麼

servlet被伺服器例項化後,容器執行其init方法,請求到達時執行其service方法,service方法自動派遣執行與請求對應的do 方法 doget,dopost 等,當伺服器決定將例項銷毀的時候呼叫其destroy方法。1,初始化階段 呼叫init 方法 2,響應客戶請求階段 呼叫serv...