Javaサーバは、サーバ開発の基本!


Java、特に「サーバサイドJava」と呼ばれる、サーバで動くJavaの勉強を始めると、必ず最初にこういうことをいわれます。「Javaサーバを用意してください」と。ここで、「ん? Javaサーバって何だ? どこで売っているんだ?」と思った人もいたんじゃないでしょうか。実際にパソコンショップなどに問い合わせ、何十万円もするソフトを紹介されて卒倒した人もいるかも知れませんね。

サーバ開発というのは、文字通り「サーバマシンの中で動くプログラム」を作ることです。では、サーバマシンというのはどういうもののこと?――これは、はっきりいってしまえば「サーバプログラムが動いているマシン(パソコン)」のことなのです。そう、サーバというのは、実はハード(機械)のことではなく、ソフト(プログラム)のことなのですね。

私たちは普段、Webブラウザを使って様々なサイトにアクセスしていますが、これらはそれぞれサーバマシンの中に「Webサーバ」というサーバプログラムがあって、これが「誰かがこのURLにアクセスしてきたらこのページを表示する」というような処理をしているのです。つまり、サーバに接続するというのは、実はサーバにあるプログラムに接続をし、そのプログラムが処理をしていたのです。

通常、Webサイトを構築するための「Webサーバ」というプログラムは、問い合わせが来たら、指定されたファイルをそのまま送り返すというだけのことしかできません。Webサーバは、基本的にファイルのやり取りをするだけであり、Webサーバの中でいろんなプログラムを動かしたりできるわけではないのです。もちろん、Javaのプログラムだって動きません。

そこで、サーバサイドでJavaを動かすために考案されたのが「Javaサーバ」です。Javaサーバは、その中でJavaの小さなプログラムを実行することのできる特殊なサーバプログラムです。このJavaサーバを実行し、さまざまなJavaのプログラムをそこにインストールしておくことで、特定のURLにアクセスがあった場合にそれに対応するJavaプログラムを実行させたりできるのです。

従って、一般のWebサーバがあっても、Javaサーバがなければ、Javaのプログラムを動かすことはできません。逆に、サーバサイドのJavaを勉強するだけならば、WebサーバがなくてもJavaサーバがあればプログラムを動かせます。

サーバでJavaを使うには、Webサーバとは別にJavaサーバが必要になる。