フレサーモン難民

備忘録など ほぼ自分向けのまとめ

備忘録:サーブレット①

サーブレットクラスの書き方

サーブレットクラスの基本的な書き方は下のとおり。例としてサーブレットクラス:KonchiwaServletを作成。

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class KonchiwaServlet extends HttpServlet {
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
}

サーブレットクラス作成の際には、守らないといけないルールがある。

①javax.servlet.http.HttpServletクラスを継承して作成すること

②HttpServletクラスのメソッド、doGetメソッドをオーバーライドすること
ブラウザからサーブレットクラスがリクエストされるとdoGetメソッドが実行される。doGetメソッドに引数として渡されるHttpServletRequestとHttpServletResponseはそれぞれブラウザからのリクエスト、ブラウザへのレスポンスに関係する情報と機能を持つインスタンス

サーブレット関係のクラスをimportする

サーブレットクラスを実行させる

ブラウザでサーブレットクラスのURLを指定してリクエストするとサーブレットクラスが実行できる。URLは以下の形式。

http://サーバ名/アプリケーション名/URLパターン

例:http: // localhost:8080/sample/SampleServlet

この時URLにはURLパターンというものを指定する必要がある。URLパターンはサーブレットクラスの中で設定する必要があり、サーブレットクラス名と同じものでもいいし、別の名前を設定もできる。

URLパターン設定の仕方

URLパターンは”@WebServletアノテーション”というもので設定する。またその際、javax.servlet.annotation.WebServletをimportしてやる必要がある。

@WebServlet("/URLパターン")

import javax.servlet.annotation WebServlet;

@WebServlet("/konchiwa")
public class KonchiwaServlet extends HttpServlet {
 ...
}

HTMLを出力させる

HTMLへの出力は、ブラウザへのレスポンスを表すHttpServletResponseインスタンスを通じて行う。

protected void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("...");
out.println("</html>");


参照:「スッキリわかるサーブレットJSP入門 第2版」