(24)【Eclipse2022】動的WebプロジェクトでWebページ(Servlet版)を表示したい。

投稿者: | 2022年11月15日

936 views

この記事は最終更新から 697日 が経過しています。

1. やりたいこと

前回の投稿 (23)【Eclipse2022】動的WebプロジェクトでWebページ(by HTML)を表示したい。 では、Eclipse 2022 でプロジェクトを作成し、HTMLで書いたWebページを表示させた。

今回は、同じことを HTMLではなく Java Servlet でやってみたい。

2. やってみた

Step 1: 動的Webページプロジェクトを作成

Step 2: Java Servletファイルを作成

Eclipseで Java Servletを新規作成すると、ひな形込みで作成してくれるので便利だ。
Java Servletファイルの新規作成手順は以下の通り。

1) 「ファイル」-「新規」-「その他」メニューを選択する。

2) 「Web」-「サーブレット」を選択する。

3) クラス名を適当に決めて…

4) とりあえず doGet()だけ具現化を指定して [完了] を押下する。

この時点で、こんな感じでひな形ファイルが自動生成された。

Step 3: Java Servletファイルの中身を自由に編集

今回、Java Servletで作る Webアプリに実装する機能は以下の一つだけ。
Webブラウザで開くと現在時刻を表示

この機能を実現するため、自動生成されたひな形を以下のように変更した。
※追記部分は強調表示している行のみ。

14行目ではサーブレット名を指定している。
 → Webブラウザのアドレス欄に入力する名前を変えたければ、ここを変えればよい。

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;

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

/**
 * Servlet implementation class TestServlet
 */
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	/**
	* @see HttpServlet#HttpServlet()
	*/
	public TestServlet() {
		super();
	}
	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		//response.getWriter().append("Served at: ").append(request.getContextPath());
		response.setContentType("text/html; charset=UTF-8");
		Date timeNow = new Date();
		PrintWriter out = response.getWriter();
		out.println("HELLO hello " + timeNow);
	}
}

Step 4: Java Servletを実行

前回の投稿 (23)【Eclipse2022】動的WebプロジェクトでWebページ(by HTML)を表示したい。 と同様に、Tomcatにプロジェクトを紐づけた後、Tomcatを実行する。

その後 Webブラウザからアクセスする。
・アドレスバーに以下を入力する。
http://localhost:8080/{プロジェクト名}/{Java Servlet名}
ここでポート番号 8080 は Tomcatに割り当てられたもの。

すると…
意図したとおりに動いた!


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)