Javaサーバの中身は?
では、サーバサイドJavaの場合はどうなっているのでしょう。Javaの場合、普通のWebサーバではプログラムは動きません。一般に「Javaサーバ」と呼ばれるサーバを用意し、この中でJavaのプログラムが動きます。
JavaサーバではWebサーバとは別に「Javaサーバ」のプログラムが動いており、そこから「Webアプリケーション」と呼ばれるプログラムが呼び出され動いている。 |
このJavaサーバには、Web上で公開されるディレクトリが用意されており、この中で「Webアプリケーション」と呼ばれる形でプログラムを配置します。Webアプリケーションは、あらかじめどういうファイルがどのような構造で配置されているか、といったことが決められています。このルールに従って必要なプログラムやファイル類を作成しまとめていくのです。Javaサーバはブラウザなどから要求があると、その中のファイルからJavaのプログラムを生成したり、あるいは用意されたJavaプログラムを必要に応じてサーバ内で実行したりします。
このWebアプリケーションは、多くの場合「HTMLおよびその他のWeb用ファイル」「Javaのプログラム」「各種の設定情報を保存したXMLファイル」といった数多くのファイルによって構成されます。Webアプリケーションの仕様に沿ってこうした各種のファイルとプログラムを用意し、それをWebアプリケーションとしてまとめて、Javaサーバで公開する――Javaによるサーバサイドの開発とは、そうした作業になります。
もちろん、本格的なWebアプリケーションになれば、ファイルの数も数百となり、とても一人が作成することはできません。HTMLやスタイルシートなどを駆使した画面のデザインを行う人、プログラム部分を作成する人に分かれ、その中で更に役割に応じて多くの人が作業分担して開発するのが一般的です。――いかがです、「サーバサイドにおけるJava開発」というのがどういうものか、ちょっとだけイメージが沸いてきましたか?
サーバサイド開発は誰でもできる?
ざっとサーバサイドがどういうものかを読んで、「これじゃあ、とても個人では勉強とかできそうにないな」と思った人もいるかもしれません。が、実はそうでもありません。
ここまで説明したように、サーバサイドJavaを使うためには「Webサーバ」「Javaサーバ」そしてそのための開発ソフトなどが必要になることがわかりました。――実は、これらはすべてインターネットでタダで手に入るのです。現在、こうしたサーバソフトや開発ソフトの多くがオープンソースやフリーウェアとして無償配布されています。それらを使うことで、サーバ開発の環境を個人で整えることもできるのです。
「でも、家のパソコンじゃあ・・」なんて思っている人。最初に説明しましたね、実は「サーバマシン」と「家庭用のパソコン」の違いというのは、ソフトや設定の差だけなのだ、と。普段使っているノートパソコンでも、サーバソフトをインストールし設定するだけで、「Webサーバ」になるのです。――いえ、もちろんこれだけでは、家のパソコンをそのままWebサーバにして運用するわけにはいきません。が、開発のためのテスト用サーバとしてなら、これで十分役に立ちます。
確かにサーバサイドの環境やソフトの設定については、それなりに面倒なことが多々あります。こうしたことについては、別途サーバサイドJavaのための連載としてこのサイトで解説していく予定です。少なくとも、「サーバサイドの開発は、個人ユーザには無縁の世界なのだ」という誤った考え方だけは払拭しておきましょう。あなたのパソコンでも、サーバサイド開発は行えます。ガイド自身も本業であるライティングの仕事が空いたときにはサーバの開発業務を請け負うことがありますが、その場合も開発に使うのは、普段使っているノートパソコンだったりするのです。