【Java & Tomcat】リンクによるGETリクエスト(サンプルコード付き)

  • このエントリーをはてなブックマークに追加
  • Pocket

Webページの見た目を構成しているHTMLの特徴の一つは、ページ間をリンクで結べる所である。このリンクの機能を利用してサーブレットを呼び出す方法について説明する。

リンクによるGETリクエストの仕方

リンクとは、Webページで他のWebページを呼び出すための仕組みである。文字や絵にリンクを付けると、その文字や絵をクリックすると別のWebページが表示される。このリンクを使ってサーブレットを呼び出してみよう。

画面の中の「リンク」という文字が青くなって、アンダーラインが引かれている。これがリンクだ。

書き方の基本は簡単だ。

<a href="URLパス">

実際のHTML画面でリンクを付けるコードはこうなる。

<p>サーブレットを呼び出す<a href="/Servlet/ServletLink">リンク</a></p>

リンクによるGETリクエストのサンプルプログラム

このサンプルプログラムは、サーブレットにリンクされた文字をクリックすると、リンクされたサーブレットが起動される。

サーブレットの配置とプログラムのコードは次のようになっている。

最初にHTMLで書かれたフォームデータ入力画面のコードを示す。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<title>リンクによるGETリクエストトサンプル</title>
</head>
<body>
<p>下の「リンク」の文字をクリックしてください。</p>
<p>サーブレットを呼び出す<a href="/Servlet/ServletLink">リンク</a></p>
</body>
</html>

次に、HTML画面からリクエストを受け取るサーブレットのコードを示す。

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/ServletLink")//[1]
public class ServletLink extends HttpServlet {//[2]
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {//[3]
        response.setContentType("text/html; charset=UTF-8");//[4]

        PrintWriter out = response.getWriter();//[5]
        out.println("<html><head></head><body>");//[6]
        out.println("<p>リンクによってサーブレットが呼び出されました。</p>");//[7]
        out.println("</body></html>");//[8]
    }
}

実行結果

ブラウザにURL:http://localhost:8080/Servlet/link.htmlを入力し、Enterを押す。

表示されるブラウザ画面:

アンダーラインの引かれた「リンク」の文字をクリックする。

表示されるブラウザ画面:

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] アノテーションの宣言をする。
  • [2] HttpServletを継承して、ServletLinkクラスを定義する。
  • [3] doGet()メソッドをオーバーライドして定義する。
  • [4] Content Typeを設定する。
  • [5] HTMLを出力するためのPrintWriterオブジェクトを取得する。
  • [6]-[8] PrintWriterオブジェクトに「リンクによってサーブレットが呼び出されました。」と表示するHTMLコードを出力する。

まとめ

リンクからサーブレットを呼び出すことが出来るということは、文字や図をそのまま記述した「静的なページ」に加え、プログラムによる処理で内容が変わる「動的なページ」を作成出来るということである。サンプルプログラムを改造して表示内容を変えるなどしてみよう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する