Servlet/JSP 第2回では、前回に引き続きServletクラスの作成について解説していきます。
この記事では、Servletクラスの実行についての解説しています。前回書いたコードと照らし合わせて内容を理解していきましょう。
Servletクラスの実行方法
ServletクラスのURL
Servletクラスを実行するには、ブラウザでServletクラスのURLを指定してリクエストします。
ServletクラスのURLは次の形式で指定します。
http://<サーバー名>/<プロジェクト名>/<URLパターン>
Servletクラスの場合、URLの最後の部分にはファイル名ではなく、URLパターンを指定します。
URLパターンはServletクラスをリクエストするときに使う名前で、開発者が自由に設定できます。
たとえば、「HelloServlet」というクラス名がついたServletクラスに「hello」というURLパターンを設定した場合、そのクラスをリクエストするURLは次のようになります。
http://<サーバー名>/<プロジェクト名>/<hello(HelloServlet)>
ServletクラスはURLパターンを設定しないとリクエストしても実行されません。
URLパターンの設定
ServletクラスのURLパターンは「@WebServletアノテーション」で設定します。
アノテーションは、クラスやメソッドなどに関連情報を付加できる注釈のような機能です。
アノテーションで付加された情報は、外部ツールから利用できます。
Servletクラスに@WebServletアノテーションを加えると、アプリケーションサーバーがそれを読み取り、URLパターンを設定します。
import jakarta.servlet.annotation.WebServlet;
@WebServlet("/hello")
public class HelloServlet extends HttpServlet{
.
.
.
}
@WebServlet(“/URLパターン”)
※デフォルトでは、Servletクラス名が入ります。
※URLパターンは「/」から始める。
※jakarta.servlet.annotation.WebServletをインポートする必要がある。
Servletクラスの実行
ServletクラスにURLパターンを設定したら、ブラウザからリクエストして実行できるようになります。
ブラウザからリクエストする方法
Webアプリケーションに対する最初のリクエストは、方法①,②によって実行されます。
実行後は、ページ内のリンクからページを移動していくことになります。
方法① ブラウザを起動してURLを入力する
ブラウザからServletクラスのURLを入力してリクエストする。
この時、アプリケーションサーバーを起動しておく必要があります。
方法② Eclipseの実行機能を利用する
リクエストするServletクラスを選択し、右クリック→「実行」→「サーバーで実行」を選択する。
リクエストメソッドと実行メソッド
ここまで使ってきたdoGetメソッドは、「URLの入力」または、「リンクのクリック」でServletクラスを実行した場合に実行されます。
Sarvletクラスは常にdoGetメソッドを実行するとは限らないということを覚えておきましょう。
doGetメソッド/doPostメソッド
Servletクラスが実行するメソッドは、リクエストメソッドによって決まります。
GETリクエストされたらdoGetメソッド、POSTリクエストされたらdoPostメソッドが実行されます。
GETリクエスト | POSTリクエスト |
doGetメソッドが実行 | doPostメソッドが実行 |
コメント