SpringBootでの開発経験しかなかったので、それ以前のWeb開発技術である JSPとServletを調べて見ました。
概要としては、下記のサイトが参考になりました。
ここでは、ServletでHello WorldをWebブラウザで表示させるプログラムを作成します。 Servletとは、サーバサイド処理をするJavaプログラムのことです。
それでは、開発環境構築からです。
まずは、Eclipseをインストールします。次にEclipseのプロジェクトを作成したいのですが、Web開発するためには、Eclipseのプラグインを色々とインストールしておく必要があります。
プロジェクト作成前の準備
- Eclipse Java EE Developer Toolsのインストール
※これをインストールするとプロジェクトを新規作成するときにWebが選択できるようになります。
↓
-
次にプロジェクト新規作成時のターゲット・ランタイムでTomcatを選択できるように環境構築します。
下記のソフトウェアをインストールします。 こちらのサイトを参考にしました。- JST Server Adapters
- JST Server Adapters Extensions
- Apache Tomcatのダウンロード & 解凍
-
JST Server Adapters, JST Server Adapters Extensionsのインストール
-
Apache Tomcatのダウンロード & 解凍 https://tomcat.apache.org/download-90.cgi
tar.gzをダウンロードして、任意のディレクトリに解凍します。(Macで開発しているので、とりあえずApplication配下に解凍しておきました。) -
Eclipse Java EE Developer Toolsのインストール
※ これをインストールしないとプロジェクト作成時に、failed while installing dynamic web module x.xのエラーが出ます。
- プロジェクトの作成方法
File→New→Other→Web→Dynamic Web Projectの順でクリックします。
プロジェクト名、ターゲット・ランタイムを設定して、Nextを押下します。
ターゲットランタイムは上記で解凍したTomcatと同じものを選択します。
何も変更せずに、Nextを押下します。
Generate web.xml deployment descriptorにチェックを入れて、Finishボタンを押下します。
Project Explorerに作成したプロジェクトが表示されます。
次にサーブレットを作成します。
File→New→Servletとクリックしていきます。
任意のJava package、Class nameを入力して、Finishを押下します。
サーブレットの雛形クラスファイルが作成されます。
作成されたクラスを下記のように実装します。
そして、プログラムを実行し、webブラウザのアドレスバーに「localhost:8080/HelloWorld/Hello」を入力しEnterを押すと、Hello WorldがWebブラウザに表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
package index; import java.io.IOException; 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 Hello */ @WebServlet("/Hello") public class Hello extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Hello() { super(); } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); response.getWriter().append("<html><body><h1>Hello World</h1></body></html>"); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } |
次回は、JSPでHello Worldを表示させてみようと思います。