Webコンテナ(ウェブコンテナ)
ソフトだよ
Java Servletを動かすときに使うよ
簡単に書くよ
Webコンテナ(ウェブコンテナ)(英:Web container)とは
Java Servlet
(Webサーバ上で動くJavaのプログラム)を動かすときに必要なソフト
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・サーバ
・Webサーバ
・プログラミング言語
・Java
・Java Servlet(サーブレット、Servlet)
について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
サーバは「サービスや機能を提供する側のコンピュータ」です。
Webサーバは、さっくり書くと「ホームページ関連の仕事をしているサーバ」です。
あなたがホームページを見るとき、まずWebブラウザさん(ホームページを見るときに使うソフト)からWebサーバさんに「このページをおくれ」と お願いが出されます。
そのお願いに対して、WebサーバさんはWebブラウザさんに「ほれ、そのページだよ」と お返事をします。
くれと言われたホームページのファイルをあげるのです。
Webブラウザさんは、Webサーバさんからもらったファイルを画面に表示します。
これが、あなたがホームページを見るときの流れです。
この流れにおいて、ホームページのファイルを「ほれ、そのページだよ」とくれたのがWebサーバさんです。
プログラミング言語は「プログラムの元ネタ(ソースコード)を書くときに使う言葉」です。
一般的なプログラムというのは、まず人間語で元ネタを書き、それをコンピュータさんが分かる言葉に翻訳することで完成します。
この「元ネタ」を書くときに使う言語がプログラミング言語です。
Javaは「一度書けば、どこでも動く」の理念で作られたプログラミング言語です。
プログラムの元ネタを書くときに使う言葉のひとつです。
Javaのプログラムは、どんな環境でも動くということに(建前上は)なっています。
ちなみに、Javaが「オブジェクト指向」という用語を世間一般に流行らせました。
Javaを生み出した人は、このプログラミング言語を使って、いろいろなプログラムを作れるようにしました。
その中のひとつに、Webサーバで動くJavaプログラムがあります。
ァイルが置いてあるコンピュータ)で動くJavaプログラムがあります。
このJavaプログラムを「Java Servlet(サーブレット、Servlet)」と言います。
以上を踏まえて、本題に入ります。
実はJava Servletさんは単独ではお仕事ができません。
とあるソフトのお世話になって、はじめてお仕事ができます。
その「とあるソフト」が「Webコンテナ」です。
「サーブレットコンテナ」と表現されることも あります。
Webコンテナとサーブレットコンテナを別のものとして扱う人もいるようですが、個人的には同じものと解釈しています。
Java ServletさんはWebコンテナさんの手によって動かされます。
例えば、そうですね。
パソコンさんからJava Servletさんにお仕事の依頼が来たとしましょう。
小難しい言い方をすると「HTTPリクエストが来た」というやつです。
このお仕事の依頼を、まずはWebコンテナさんが受け取ります。
直接Java Servletの元には届きません。
Webコンテナさんが受け取るのです。
そして、WebコンテナさんがJava Servletさんにお仕事をさせます。
「こんな依頼が来たぞ~。働け、働け~」とJava Servletさんの尻を叩くのです。
これがWebコンテナさんのお仕事です。
実際には、お仕事をさせるJava Servletをメモリ上に展開したり、JSPをJava Servletに変換したり、必要に応じてなんかいろいろとやります。
一言でまとめるよ
まぁ「Webコンテナ」って単語が出てきたら「Java Servlet
(Webサーバ上で動くJavaのプログラム)を動かすソフトなんだな~」と お考えください。
おまけ
■訳してみるよ
「web(ウェブ)」の意味は「クモの巣」とかです。
ただし、今回はインターネットのことだと思ってください。
「container(コンテナ)」の意味は「入れ物」とか「容器」とか「コンテナ」とかです。
何となく くっつけると
インターネットの入れ物
となります。
■検索してみる?






