1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

 この記事では、とても簡単なWebアプリケーションを作成します。それによって、まずはSpring Bootに慣れてもらいます。そして、Spring Bootを使えば、とても簡単にWebアプリケーションが作成できることが理解できると思います。

 なお、以下の記事の環境構築が終わっている前提とします。

■ 処理の概要

定番のHello Worldと書かれた画面を表示するサンプルアプリケーションを作ります。以下のような画面を表示します。
[図-結果画面]
図3-1-hello-world-1.png

画面を表示するために、コントローラーと呼ばれるクラスを作ります。コントローラーとは、以下のことを行うクラスです。

  1. クライアントからサーバーへのリクエストを受け付ける。
  2. サーバーでの処理結果(レスポンス)をクライアントへ返す。

※ クライアントとは、サーバーに処理を依頼するPCやブラウザ、ユーザーのことです。

 以下のようなコントローラーを作って、画面を表示します。
[処理概要]
図3-1-hello-world-2.png

  1. リクエスト(GETメソッド)
     ブラウザにURLを入力します。これで、HTTPのGETメソッドでリクエストが送れます。
     
  2. HTML作成
     サーバーは、テンプレートファイルのhello.htmlから、ブラウザに返すためのHTMLを生成します。
     
  3. レスポンス(hello.html)
     生成されたHTMLがブラウザに返され、表示されます。

■ サンプルアプリケーションの作成

 ここから、実際に手を動かしていきましょう。以下の手順で、サンプルアプリケーションを作成します。

  1. ファイルなどの作成
  2. HelloWorld画面作成

1. ファイルなどの作成

 まずはアプリケーションを作るためにパッケージを作成します。パッケージ・エクスプローラーのsrc/main/javaをクリックし、その下にあるcom.example.demoを右クリック > 「新規」 > 「パッケージ」をクリックします。

[図-パッケージ作成-1]
図-パッケージ作成1.png

 名前に「com.example.demo.hello」と入力し、完了ボタンをクリックします。
[図-パッケージ作成]
図-パッケージ作成2.png

 次に、作成したパッケージにクラスを作成します。
作成したhelloパッケージを右クリック > 「新規」 > 「クラス」をクリックします。
[図-クラス作成]
図-クラス作成1.png

 名前に「HelloController」と入力し、完了ボタンをクリックします。
[図-クラス作成]
図-クラス作成2.png

 次に、HelloWorldを表示するためのHTMLファイルを作成します。
src/main/resourcesをクリックし、その下にあるtemplateディレクトリを右クリック > 「新規」 > 「HTMLファイル」をクリックします。
[図-ファイル作成-1]
図-ファイル作成1.png

 ファイル名に「hello.html」と入力し、完了ボタンをクリックします。
[図-ファイル作成-2]
図-ファイル作成2.png

 これで、プロジェクト内に以下のようにパッケージとファイルが作成されます。文字色が変わっている部分が、先ほどの手順で追加した箇所です。

パッケージ・エクスプローラーの構成
SpringBootSample
 ┣ src/main/java
 ┃  ┗ com.example.demo
+┃    ┣ hello  ← パッケージを新規作成
+┃    ┃  ┗ HelloController.java  ← Javaクラスを新規作成
 ┃    ┗ SpringBootSampleApplication.java
 ┣ src/main/resources
 ┃  ┣ static
 ┃  ┣ templates
+┃  ┃  ┗ hello.html  ← HTMLファイルを新規作成
 ┃  ┗ application.properties
 ┗ pom.xml

補足: SpringBootSampleApplication.java
 Spring Bootのプロジェクトを作成すると、[プロジェクト名 + Application.java]というファイルが自動で作られます。本記事の場合、SpringBootSampleApplication.javaというファイルが作成されています。このファイルのソースコードにはmainメソッドがあり、その中でSpring Bootを実行しています。
[SpringBootSampleApplication.java] (一部抜粋)

SpringBootSampleApplication.java
@SpringBootApplication
public class SpringBootSampleApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringBootSampleApplication.class, args);
    }
}

 つまり、Spring Bootを実行する場合、このjavaファイルを実行します。

2. HelloWorld画面作成

 では次に、HelloWorldと書かれた画面を作成します。先ほど作成したhello.htmlを以下のように編集してください。

XXX.html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"><head>
  <meta charset="UTF-8">
  <title>Hello World</title>
</head>
<body>
  <h1>Hello World</h1>
</body>
</html>

ポイント❶: Thymeleaf(タイムリーフ)使用の宣言
 Thymeleafを使用するためには、htmlタグ内にxmlns:th="http://www.thymeleaf.org"と書きます。これで、Thymeleafを使うことを宣言しています。まだThymeleafの機能は使っていません。ですが、Spring Bootでは全てのHTMLにThymeleafの宣言を入れておく方がよいでしょう。

 次にコントローラーを作成します。このコントローラーでは、/helloへのリクエストを受け付けます。そのリクエストの処理結果として、HTMLをクライアントに返します。先ほど作成したHelloController.javaを以下のように編集してください。

※ import文はEclipseが自動で補完してくれるため、基本的には入力する必要はありません。ただし、同じ名前のクラスなどをimportする場合は、サンプルコードのimport文と同じクラスなどをimportしてください。

HelloController.java
package com.example.demo.hello;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller  
public class HelloController {

    @GetMapping("/hello")  
    public String getHello() {
        // hello.htmlに画面遷移
        return "hello";
    }
}

ポイント❶: @Controller
 コントローラーを作成するためには、@Controllerアノテーションをクラスに付けます。

ポイント❷: @GetMapping
 コントローラーの中では、@GetMappingアノテーションを使うことができます。このアノテーションをメソッドに付けると、GETメソッドを使ったHTTPリクエストを受け付けることができます。@GetMappingの引数には、受け付けるリクエストのURLを設定します。サンプルコードの場合、/helloへのGETメソッドでのHTTPリクエストを受け付けるようになります。
 メソッドの戻り値には、拡張子を除いたHTMLファイルのパスを指定します。パスとは、src/main/resources/templatesからの相対パスです。サンプルコードの場合、getHelloメソッドの戻り値をsrc/main/resources/templates/hello.htmlに設定している、という意味になります。
 これで、/helloにリクエストを送ると、hello.htmlがブラウザに返されます。

■ 実行

 Spring Bootを実行するためには、以下の操作をします。
プロジェクトを右クリック >「実行」>「Spring Bootアプリケーション」をクリックします。
[図-Spring Boot実行-1]
図3-1-hello-world-9.png

 以下のようなメッセージがEclipseのコンソールに出力されます。これでSpring Bootが実行されました。
[図-Spring Boot実行-2]
図3-1-hello-world-10.png

 Spring Bootを実行したら、ブラウザのURL入力欄に[http://localhost:8080/hello]と入力します。これで、先ほど作成したコントローラーの@GetMapping(“/hello”)が付いたメソッドにHTTPリクエストが送られます。
[実行結果]
図3-1-hello-world-1.png
 HelloWorldと書かれた画面が表示されたら、画面作成の完了です。

■ Spring Bootの停止方法

Spring Bootを停止する場合、以下の2通りの方法があります。

  1. Eclipseの画面上部の停止ボタンをクリック。
  2. コンソールの停止ボタンをクリック。
    [図-Spring Bootの停止方法]
    図3-1-hello-world-11.png

 投稿のやる気につながるため、記事の内容が少しでも良いと思ったら、いいねやフォローしてくださいね。

 最後まで読んで頂き、ありがとうございます。

参考)下記の書籍

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?