Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:doGetとdoPostの違い)

doGetとdoPostの違い

このQ&Aのポイント
  • doGetとdoPostは、ブラウザからのリクエストの種類に対応するメソッドです。
  • doGetはブラウザからのGETリクエストに対応し、doPostはPOSTリクエストに対応します。
  • doGetとdoPostの中身のコーディングの仕方は同様であり、送信量の違いだけがあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

GET と POST では、パラメータをプログラムに渡す仕組みが全く違います。 仕組みが違うので渡せるパラメータの大きさが違う、等の違いが出てきます。 ですが、Servlet では、その違いを request オブジェクトが全部隠してくれて いるので、気にしなくて良いです。つまり、同じことができて、呼出され方が 違う、と。 普通は、html や JSP の方も、Servlet を意識して書くでしょうから、 どちらかだけの実装で良いのですが、汎用的(呼ぶ人を特定しない)な Servlet を書こうと思ったら、両方を実装しておく、と理解しておけば良いです。 ちなみに、GET で渡せるパラメータの大きさは 255 バイトと決っているわけでは ないし、POST で渡せるパラメータの大きさに制限が無い、というわけでもあり ません。 GET の制限は、どちらかというとブラウザ側の実装によって決ってくることで、 POST に制限があるとしたらサーバ側(例えば、Servlet コンテナ)の実装に よってきます。

noname#2205
質問者

補足

解答ありがとうございます。 別にコーディング上は意識しなくてもいいのですね。 今やってみたらそのとおり、でした。 >普通は、html や JSP の方も、Servlet を意識して書く >でしょうから、 >どちらかだけの実装で良いのですが、汎用的(呼ぶ人を特 >定しない)な Servlet >を書こうと思ったら、両方を実装しておく、と理解してお >けば良いです。 なぜ、両方を実装するのでしょうか? 呼ぶ人を想定しない、・・・からなのでしょうが、 いまいち、具体的になぜ、なのかわかりません。 HTMLやJSPがGetやPostの両方を使う場合があるから?? うーん、勉強不足ですみません。。 >GET の制限は、どちらかというとブラウザ側の実装によっ >て決ってくることで、 >POST に制限があるとしたらサーバ側(例えば、Servlet >コンテナ)の実装に >よってきます。 ああ、そうなんですか。勉強になりました。。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

> なぜ、両方を実装するのでしょうか? > 呼ぶ人を想定しない、・・・からなのでしょうが、 > いまいち、具体的になぜ、なのかわかりません。 例えば、Perl なんかで書かれたフリーの掲示板の CGI とかってありますよね。 それとか、ソフト屋さんが車内で配布している共通プログラムとか。 そういったレベルで、Servlet を書こうとしたら、「POST でも GET でも 使えます」って両方を実装することになりますよ。 もちろん、「POST にしか対応してません」と取扱説明に書いておいても 良いのだけれど。

noname#2205
質問者

補足

ありがとうございます。 理解できました。

すると、全ての回答が全文表示されます。

関連するQ&A