ServletResponseをパラメーターとして渡す正当な理由はありますか?

ルーゴ

javax.servlet.Servlet
void service(ServletRequest req, ServletResponse res)メソッドがServletResponse単にそれを返すのではなく、パラメータとして与えられている理由はありますか?

アロンソドミンゲス

JavaサーブレットAPIは抽象化であり、あらゆる種類の要求を処理するためにJava Webアプリケーションに必要な最小要件を定義します(これを見ると、ほとんどすべてのクラスがインターフェースまたは抽象クラスとして定義されていることがわかります)。

このAPIは、さまざまなJavaサーバーベンダー(IBM、Sun、Apache、Oracleなど)が最小要件に合意したプロセスの後JCPによって定義されたため、現在公式標準と見なされているものが定義されています。ただし、ベンダーが異なれば、サーブレットコンテナを実装する方法も異なり、現在ではその数も異なります(それぞれが異なる機能を備えています)。

サーブレットコンテナは、両方を適切に処理するために両方のオブジェクト(要求と応答)を追跡する必要があるため、ユーザーに対してServletResponse(またはHTTPバリアントHttpServletResponse)を作成する責任を活用することはできません-内部にあるものを覚えておいてくださいサーブレットのserviceメソッドはユーザーコードです。したがって、サーブレットコンテナは、serviceメソッドを呼び出す前に、(独自の実装を使用して)要求オブジェクトと応答オブジェクトを作成して事前入力しますユーザーの観点からは、インターフェイスを介してそれらを処理するだけで十分であり、両方のオブジェクトの実際の実装にアクセスできないため、ベンダー固有のコードも保護されます。

APIは、これらのベンダーがそれを実現定義されたとき、彼らはラッパー(のセットに含まのでしかし、いくつかのケースでは、ユーザーがこれらのオブジェクトのいずれかのデフォルトの動作をオーバーライドしたいと思いHttpServletRequestWrapperHttpServletResponseWrapperユーザーコードによって拡張することができ、など)サーブレットまたはフィルターのいずれかで使用され、コンテナーによって提供されるデフォルトの実装を置き換えます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

リクエスト/レスポンスをパラメータとして渡さない理由はありますか?

分類Dev

メソッドをパラメーターとしてメソッドに渡す方法はありますか?

分類Dev

Javaアノテーションをパラメーターとして渡す方法はありますか?

分類Dev

Laravel。APIリソースをパラメーターとして渡す方法はありますか?

分類Dev

FXMLコントローラー参照をパラメーターとしてメソッドに渡す一般的な方法はありますか?

分類Dev

関数をマクロのパラメーターとして渡す方法はありますか?

分類Dev

抽象クラスのパブリックコンストラクターに正当な理由はありますか

分類Dev

パラメータとして渡された要素の関数を呼び出す方法はありますか?

分類Dev

/ homeパーティションとデータパーティションを別々にする正当な理由はありますか?

分類Dev

Javaでは、クラスコンストラクターからfinal以外のメソッドを呼び出す正当な理由はありますか?

分類Dev

型パラメーターとして使用するときにクラスコンストラクターに引数を渡す方法はありますか?

分類Dev

派生クラスをパラメーターとして渡すときに、デバッガーは警告をスローする必要がありますか?

分類Dev

Pythonロガーをパラメーターとして渡す必要がありますか?

分類Dev

Pythonロガーをパラメーターとして渡す必要がありますか?

分類Dev

辞書をパラメータとして使用するよりも効率的な方法はありますか

分類Dev

Scalaでタイプパラメーターとしてサブタイプを使用する理由はありますか?

分類Dev

wrkを使用してGETリクエストにパラメーターを渡す方法はありますか?

分類Dev

ポインタをパラメータとして渡す必要がありますか

分類Dev

SASSのクラスを介してパラメータを渡す方法はありますか?

分類Dev

Hyperledger Fabric NodeJSスマートコントラクトでは、すべてのパラメーターを文字列として渡す必要がありますか?

分類Dev

Javaでfalseブール値を「Boolean.FALSE」としてコーディングする正当な理由はありますか?

分類Dev

*これをコピー割り当て演算子から返さない正当な理由はありますか?

分類Dev

「ブール値」の代わりにブール値をパラメーターとして渡す必要があるのはなぜですか?

分類Dev

メソッドWITHパラメーターを新しいアクションとして渡す方法はありますか?

分類Dev

PostgreSQLにBYTEAとしてHEXを挿入する正当な理由はありますか?

分類Dev

クラスの実際のインスタンスをパラメーターとして渡す方法はありますか?

分類Dev

swi-prologのフォームからパラメーターとして複合用語を渡す方法はありますか?

分類Dev

コアMVCで部分ビューの代わりにViewComponentを使用しない正当な理由はありますか?

分類Dev

RubyでNet :: HTTPを使用してパラメーターとヘッダーを渡す方法はありますか?

Related 関連記事

  1. 1

    リクエスト/レスポンスをパラメータとして渡さない理由はありますか?

  2. 2

    メソッドをパラメーターとしてメソッドに渡す方法はありますか?

  3. 3

    Javaアノテーションをパラメーターとして渡す方法はありますか?

  4. 4

    Laravel。APIリソースをパラメーターとして渡す方法はありますか?

  5. 5

    FXMLコントローラー参照をパラメーターとしてメソッドに渡す一般的な方法はありますか?

  6. 6

    関数をマクロのパラメーターとして渡す方法はありますか?

  7. 7

    抽象クラスのパブリックコンストラクターに正当な理由はありますか

  8. 8

    パラメータとして渡された要素の関数を呼び出す方法はありますか?

  9. 9

    / homeパーティションとデータパーティションを別々にする正当な理由はありますか?

  10. 10

    Javaでは、クラスコンストラクターからfinal以外のメソッドを呼び出す正当な理由はありますか?

  11. 11

    型パラメーターとして使用するときにクラスコンストラクターに引数を渡す方法はありますか?

  12. 12

    派生クラスをパラメーターとして渡すときに、デバッガーは警告をスローする必要がありますか?

  13. 13

    Pythonロガーをパラメーターとして渡す必要がありますか?

  14. 14

    Pythonロガーをパラメーターとして渡す必要がありますか?

  15. 15

    辞書をパラメータとして使用するよりも効率的な方法はありますか

  16. 16

    Scalaでタイプパラメーターとしてサブタイプを使用する理由はありますか?

  17. 17

    wrkを使用してGETリクエストにパラメーターを渡す方法はありますか?

  18. 18

    ポインタをパラメータとして渡す必要がありますか

  19. 19

    SASSのクラスを介してパラメータを渡す方法はありますか?

  20. 20

    Hyperledger Fabric NodeJSスマートコントラクトでは、すべてのパラメーターを文字列として渡す必要がありますか?

  21. 21

    Javaでfalseブール値を「Boolean.FALSE」としてコーディングする正当な理由はありますか?

  22. 22

    *これをコピー割り当て演算子から返さない正当な理由はありますか?

  23. 23

    「ブール値」の代わりにブール値をパラメーターとして渡す必要があるのはなぜですか?

  24. 24

    メソッドWITHパラメーターを新しいアクションとして渡す方法はありますか?

  25. 25

    PostgreSQLにBYTEAとしてHEXを挿入する正当な理由はありますか?

  26. 26

    クラスの実際のインスタンスをパラメーターとして渡す方法はありますか?

  27. 27

    swi-prologのフォームからパラメーターとして複合用語を渡す方法はありますか?

  28. 28

    コアMVCで部分ビューの代わりにViewComponentを使用しない正当な理由はありますか?

  29. 29

    RubyでNet :: HTTPを使用してパラメーターとヘッダーを渡す方法はありますか?

ホットタグ

アーカイブ