JSP構造

Webサーバーには、JSPページを処理するためのコンテナであるJSPエンジンが必要です。コンテナは、JSPページのリクエストをインターセプトする役割を果たします。このチュートリアルでは、JSPコンテナが埋め込まれたApacheを使用して、JSP開発をサポートします。

JSPコンテナはWebサーバーと連携して、JSPの正常の操作に必要な操作環境やその他のサービスを提供し、JSPウェブページ専用の特別な要素を正しく識別できます。

下記の写真は、Webアプリケーション内のJSPコンテナとJSPファイルの場所を示しています。

JSP処理

下記のステップは、WebサーバーがJSPを使用してウェブページを作成する方法を示しています。

  • 他の通常のウェブページのように、ブラウザはサーバーにHTTP要求を送信します。
  • Webサーバーは、これがJSPページのリクエストであることを認識し、そのリクエストをJSPエンジンに渡します。これは、URLまたは.jspファイルを使用して実行されます。
  • JSPエンジンは、ディスクからJSPファイルをロードし、それらをサーブレットに変換します。この変換は、すべてのテンプレートテキストをprintln()ステートメントに変更し、すべてのJSP要素をJavaコードに変換するだけです。
  • JSPエンジンは、Servletを実行可能クラスにコンパイルし、元のリクエストをServletエンジンに渡します。
  • Webサーバーのコンポーネントは、Servletエンジンを呼び出してから、Servletクラスをロードして実行します。実行プロセスでは、ServletはHTML形式の出力を生成し、それをHTTP response に埋め込み、Webサーバーに送信します。
  • Webサーバーは、静的HTMLページの形式でHTTP response をブラウザに返します。
  • 最後、Webブラウザは、静的ウェブページを処理しているかのように、HTTP response で動的に生成されたHTMLページを処理します。

上記のステップは、下記の写真で表示できます。

通常、JSPエンジンは、JSPファイルに対応するServletがすでに存在するかどうかをチェックし、JSPファイルの変更日がServletより前であるかどうかをチェックします。JSPファイルの変更日が対応するServletより早いの場合、コンテナは、JSPファイルが変更されておらず、Servletが有効であると判断できます。これより、プロセス全体が他のスクリプト言語(PHPなど)よりも効率的になります。

要するに、JSP ウェブページはServletを作成するため、Javaプログラミングのプロにならず、別の方法で作成されます。コメントを除いて、JSPウェブページはほとんど普通のServletとして扱うことができます。

Share

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です