doGet()
からメソッドを呼び出すことはどのように可能RequestDispatcher
ですか?
RequestDispatcher rd = sc.getRequestDispatcher("/CartServlet");
rd.forward(request, response);
このコードはdoPost()
デフォルトのアクションとして呼び出されます。
doGet()
からメソッドを呼び出すことはどのように可能RequestDispatcher
ですか?
RequestDispatcher rd = sc.getRequestDispatcher("/CartServlet");
rd.forward(request, response);
このコードはdoPost()
デフォルトのアクションとして呼び出されます。
doPost()
元のリクエストがPOSTメソッドを使用していたために呼び出されます。通常、サーブレットは相互に「呼び出す」ことはできません。リクエストを転送またはリダイレクトするだけです。どちらの場合も、元のリクエストで使用されたものと同じHTTPメソッドが使用されます。
他のサーブレットを呼び出したい場合doGet()
は、アプリケーションをリファクタリングするときです。つまり、に実装されているロジックを分離し、doGet()
他のクラスに配置して、両方のサーブレットからこのクラスを呼び出します。
以下のリンクを確認してください。HttpURLConnectionを使用して、POSTメソッドまたはGETメソッドによって内部的にリクエストを送信します。私は長い間これの必要性を感じていました。