サーブレットの開発(1)プログラミング
最後にサーブレットの開発例を説明します。
「サーブレット」はJavaプログラムによってWebサーバでダイナミックにWebページを生成する技術です。JSPに比べて自由度の高いプログラミングが可能ですが、プログラムやHTML、設定ファイルなどの記述量が増えるので、Eclipseとプラグインにより開発作業を効率化することが望ましいと思います。ちなみに、JSPは「JSP/Servlet」コンテナによってサーブレットに自動変換してから実行されています。
では、JSP編でインストールしたTomcatとTomcat Launcherプラグイン、あらかじめインストールしてある「Eclipse HTML Editor」プラグインを利用して、サーブレットを簡単に開発する手順を説明します。
このサーブレットの仕様はJSP編と同じく『Javaの乱数発生メソッドを用いて、毎回違う数値を表示する画面のHTMLを生成する』とし、「helloweb」プロジェクトをそのまま利用します。作成開始の前に[Tomcat停止ボタン]をクリックしてTomcatを止めておきましょう。
まず、サーブレットのJavaクラスを記述します。このクラスはサーブレットとして動作しますのでjavax.servlet.http.HttpServletクラスのサブクラスとします。「helloweb」プロジェクトを右クリックし、[新規(W)]-[クラス]をクリックして「新規Javaクラス」ウィンドウを開きます。
![図38:プロジェクトを右クリックし、[新規(W)]-[クラス]をクリック](http://cz-cdn.shoeisha.jp/static/images/article/3485/38.gif)
新規Javaクラスを作成するウィンドウが表示されるので、パッケージ名(今回は「hellotest」)、名前(今回は「DispRandom」)を入力し、スーパークラスの[参照(E)...]ボタンをクリックします。
スーパークラスを選択するウィンドウが表示されるので型に「javax.servlet.http.」を入力して絞込み、[HttpServlet]を選んで[OK]をクリックします。
![図40:型に「javax.servlet.http.」を入力して絞込み[HttpServlet]を選んで[OK]をクリック](http://cz-cdn.shoeisha.jp/static/images/article/3485/40.gif)
スーパークラスに「javax.servlet.http.HttpServlet」が指定されます。これでサーブレットクラスの事前定義は完了です。[OK]をクリックします。
「終了」をクリックすると、サーブレットファイルが自動生成されてJavaエディターに表示されます。

下記のとおり、必要なプログラムを書き加えてサーブレットファイルを完成し、保存します。
package hellotest;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; // 追記
import javax.servlet.http.HttpServletResponse; // 追記
import javax.servlet.ServletException; // 追記
import java.io.IOException; // 追記
public class DispRandom extends HttpServlet {
static final long serialVersionUID = 1L; // 追記
protected void doGet(HttpServletRequest req, HttpServletResponse res) // 追記
throws ServletException, IOException { // 追記
res.getWriter().println(Math.random()); // 追記
} // 追記
}

![図39:パッケージ名、名前を入力し、スーパークラスの[参照(E)...]ボタンをクリック](http://cz-cdn.shoeisha.jp/static/images/article/3485/39.gif)
![図41:サーブレットクラスの事前定義は完了。[OK]をクリック](http://cz-cdn.shoeisha.jp/static/images/article/3485/41.gif)