[Servlet]Javaファイルから「HelloWorld!」

2022/06/02に公開


◆はじめに

Webブラウザから、以下のURLにアクセスし、

http://localhost:8080/Hello/HelloWorld

Servletを使用して、Javaファイルを呼び出す。
そして、同的にHTMLで書かれた「HelloWorld」を表示させます


◆事前準備

●動的Webプロジェクト

こちらを参考にどうぞ。

https://zenn.dev/nakohama/articles/710b8009ca40c6#◆はじめに

●Tomcatのサーバー

こちらを参考にどうぞ。

https://zenn.dev/nakohama/articles/c8c29f04d96881

サーバーの用意ができましたら、
プロジェクトと、紐づけをして置いてください。

●使用するJavaのソース

TomcatにもともとServeletのサンプルとして用意されているJavaのソースコードです
HttpServletで継承(extends)している箇所がポイントです
これによって「HelloWorld」という名前の「HttpServlet」クラスとなります。
この「HttpServlet」クラスを作成し、
Servletが呼び出すように設定するのが、本記事の内容です。
Source Code for HelloWorld Example
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Hello World!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello World!</h1>");
        out.println("</body>");
        out.println("</html>");
    }
}
こちらのソースコードは、以下から参照できます。
・「Webアプリケーションマネージャ」からパスで「examples」を選択

・「Servlets examples」を選択

・「Hello World」の「Source」を選択

すると、表示されます。


手順

①表示したいページコンテンツの用意

最初にご紹介した、「Source Code for HelloWorld Example」のJavaのソースコードで
Javaファイルを作成します。
Project名は「Hello」にしています。

・「src>main>java」のディレクトリにJavaファイルを新規作成
・ Javaファイルの名前は、「HelloWorld.java」にする
・ 作成したJavaファイルに、Javaのソースコードを貼り付けて保存

②servlet-mappingの設定

サーブレットで①で用意したコンテンツが呼び出されるように設定します
サーバーのディレクトリにある「web.xml」ファイルを編集します。
URLに、「/HelloWorld」が入力された際に、
作成したJavaの「HelloWorld」クラスが呼び出されるといった設定を行っています。
・web.xmlの編集
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee                       http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">

 
 
  <!-- ================ 追加 ここから========================= -->
  
     <servlet>
 <servlet-name>HelloWorld</servlet-name>
 <servlet-class>HelloWorld</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>HelloWorld</servlet-name>
 <url-pattern>/HelloWorld</url-pattern>
 </servlet-mapping>
 
  <!-- ================  追加ここまで  ========================= -->
 

    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    
     
       <!-- ================  
                           (省略)
                        ========================= -->
    
        <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

</web-app>

③アクセス

・「Hello」プロジェクトを追加した、サーバーの起動
・以下のURLから、以下のサイトにアクセス

http://localhost:8080/Hello/HelloWorld

以下の画面が表示されたら成功です


◆最後に

いかがかだったでしょうか。
以上が、JavaのソースコードをServletで表示する場合の、基本的なやり方でした。
もしよろしければ、以下のまとめ記事もどうぞご覧ください。

https://zenn.dev/nakohama/articles/d505c637903339


◆参考にしたサイト

<JSPとServletによるWebプログラミング概要>

http://www.info.shonan-it.ac.jp/lecture/WebProgramming2/web2-7.pdf

Discussion