この種のドキュメントは悲しいことに不足していると思います。あまりにも多くの人が例が説明であると考えています、そしてあなたが例から得ることができるすべての素晴らしいことのために、時々説明はそれらの1つではありません。あなたが言及した全体的な概念のいくつかを説明しようと思います。残念ながら、バッファリングされた画像の表示の問題を直接解決することはできません。
Tomcatおよびそのような他のプログラムは「Webサーバー」です。これらは、他のコンピューターからのインターネット接続を受け入れ、特定の形式で情報を返すプログラムです。ブラウザに「www」アドレスを入力すると、そのアドレスの文字列は最終的に(「リクエスト」として)Webサーバーに送られ、Webページ(「レスポンス」とも呼ばれます)が返されます。Tomcat、Apache、Jetty、JBoss、およびWebSphereはすべて、この種のことを行う同様のプログラムです。ワールドワイドウェブの元の形式では、リクエスト文字列はサーバーマシン上のファイルを表しており、ウェブサーバーの仕事はその(html)ファイルをブラウザに表示するために返すことでした。
サーブレットは、一部のWebサーバーで実行される一種のJavaプログラムです。サーブレット自体は、javax.servlet.Servletインターフェースによって定義されたメソッドを持つJavaクラスです。サーブレットを処理するWebサーバーでは、構成ファイルに精通している人がWebサーバープログラムに特定の要求を受け入れ、サーバーからHTMLファイル(またはその他)を返す代わりにサーブレットコードを実行するように指示できます。サーブレットは、その性質上、コンテンツ自体を返します。HTMLを出力するプログラムを考えれば、正しい方向に進んでいます。
しかし、プログラムから完全なHTMLを出力するのは面倒なことがわかります。つまり、ある種のプログラミング言語が必要な「重労働」とはあまり関係のない、退屈な量のHTMLがあります。データベースの照会や結果のフィルタリングなどを行うには、Java(またはいくつかの言語)が必要ですが、最新のWebページに必要なその他の何百ものタグをJavaで挿入する必要はありません。
したがって、JavaServerPage(JSP)は、HTMLとサーブレットに関連するものを組み合わせた、特殊な種類のハイブリッドです。JavaコードをJSPファイルに直接入れることもできますが、通常はhtmlのような「タグ」を使用する方がよいと考えられています。タグは「JSPコンパイラ」によって解釈され、サーブレットに変換されます。したがって、JSPページの作成者は、これらのタグの使用方法を学習します。これらのタグは、(正しく構築されている場合)Javaプログラミング言語よりもWebページ作成者にとって論理的であり、実際にはプログラマーである必要はありません。したがって、プログラマーは、このコンテンツ志向の人と協力して、ページの外観を説明するために使用するページのタグを作成し、次にプログラマーがプログラミングを行い、コンテンツ担当者がそれを使用してWebページを作成します。
あなたの特定の問題については、私たちはあなたを助けるためにもっと詳細が必要になります。このプログラムを実行し、画像を生成するリクエストの一部としてユーザーから提供された情報を使用することを想定していますか?または、画像は一度生成され、今はそれらを表示する必要がありますか?実際、それは別の質問のトピックだと思います。
これはあなたが始めるのに十分なはずです。詳細を知るために、これらのことに関するウィキペディアの記事を提案します。幸運を祈ります。これがお役に立てば幸いです。
この補遺は、スライドショーをやりたいというコメントの後に提供されました。
重要なWebプログラミングの概念は、そのクライアントサーバーと要求/応答の性質です。従来の非JavascriptWeb環境では、クライアント(読み取りブラウザー)がサーバーに要求を送信し、サーバーがバイトを送り返します。バイトのストリームが終了した後は、2台のコンピューター間に継続的な接続はなく、そのバイトのストリームを継続できる時間には制限があります。さらに、この要求と応答以外では、サーバーは通常、クライアントが要求しない限り、クライアントに何も送信する機能を備えていません。クライアントはデータの交換を「推進」します。
したがって、たとえば、サーバーが追加の画像を表すバイトを定期的に送信する「スライドショー」は、HTMLが機能する方法ではありません(または機能するように意図されていました)。ユーザーの制御下で1つを実行できます。ユーザーが次の画像ごとにボタンを押すと、ブラウザが次の画像のリクエストを送信し、前の画像があった場所に表示されます。これは、要求と応答のパラダイムに適合します。
現在、Javascriptを使用して自動スライドショーの効果が可能です。Javascriptは、Javaに基づいていますが、それ以外は無関係であり、スクリプト言語です。これはHTMLページの一部であり、ページとともにブラウザにダウンロードされ、ブラウザの環境で実行されます(サーバー上で実行されるJSP /サーブレットとは対照的です)。Javascriptでタイマーを作成すると、N秒間待機して、サーバーに別のリクエストを送信できます(別の画像など)。Javascriptには独自のルールなどがありますが、それでもHTMLをやっているだけではないことを覚えておくことをお勧めします。
スライドショーが目的の場合は、JSPはまったく必要ありません。表示する画像の場所、ラベルやテキストなど、スライドショーを停止するためのボタンなどをHTMLで、追加の画像を要求するためのJavascriptを含むHTMLページを作成できます。
JSPを使用してページを作成できます。ページの複雑さによっては役立つ場合がありますが、スライドショーの次の画像を取得するという重要な機能には役立ちません。ブラウザがJSPページを要求した場合:
- リクエストはサーバーに送信され、
- サーバーが必要なページを判別し、それがJSPページであることを確認します。
- サーバーは、そのページをまだサーブレットにコンパイルしていない場合は、サーブレットにコンパイルします。
- サーブレットが実行され、Javaにコンパイルされたタグに従ってHTML出力が生成されます。
- サーバーはHTMLをブラウザに返します。
その後、サーバーが完成し、別のリクエストが行われるまで、それ以上のバイトはブラウザに送られません。
繰り返しになりますが、これがお役に立てば幸いです。スライドショーの例から、Webプログラミング、サーバー、HTML、JSP、およびJavascriptについて理解する必要のあるいくつかの基本的な概念が明らかになりました。これらすべての旅に幸運を祈ります。そして、あなたがそれを必要と思われるよりも少し複雑であると考えるようになると、まあ、あなたは最初ではないでしょう。