Java Servletの仕組みは?
Java Servletは、サーバー上でクライアントの要求を処理するJavaプログラムです。その動作は次のとおりです。
- クライアントがサーバにHTTPリクエストを送信します。このリクエストはGETまたはPOSTリクエストのどちらかです。
- リクエストがサーバーに届くと、URLからリクエストをどのサーブレットが処理するかを識別します。このURLとサーブレットのマッピングは通常、Webアプリケーションの構成ファイルで行います。
- サーバーは新しいスレッドを作成し、指定したサーブレットクラスのインスタンスを作成します。各要求は新しいサーブレットインスタンスを作成するため、サーブレットはスレッドセーフです。
- サーバは、リクエストパラメータをサーブレットのservice()メソッドに引き渡します。
- HttpServletのservice()メソッドはリクエストタイプ(GETまたはPOST)に応じてdoGet()またはdoPost()メソッドを呼び出します。
- HttpServletRequestオブジェクトを通じてパラメータ、ヘッダー、Cookieなどのリクエストを取得し、HttpServletResponseオブジェクトを通じてクライアントにレスポンスを送信できます。
- ビジネスロジックにもとづいてリクエストを処理し、レスポンス内容を生成する
- サーバレットは、生成された応答内容をサーバへ返送する。
- サーバーがレスポンスの内容をクライアントに送ります。
- クライアントはレスポンスを受け取り、その内容に基づいて適切な処理を実行します。