ミルラク

IntelliJ IDEAでSpring BootとThymeleafの実行環境を構築する

当サイトはアフィリエイト広告を利用しています。

Thymeleafを書籍で学びたい方やThymeleafと一緒にSpringも習得したい方におすすめな書籍です。
Springについての書籍ですが、Thymeleafの基本構文や他システムとの連携など30ページほど取り上げられています。
ThymeleafとSpringは親和性の高い技術なので、これを機にSpringを学んでみるのはいかがでしょうか?

Eclipseでの環境構築方法はこちらの記事で紹介しています。

実行環境

項目バージョン
OSmacOS Big Sur
JDKOpenJDK@17
IntelliJ IDEACommunity 2023.3

Spring BootとThymeleafのサポートは有料 (Ultimate) 版のみ

まずはじめに、残念ながら無料であるCommunity版ではSpringとThymeleafはサポートされていません。IntelliJ IDEAのエディション比較表

EclipseではSpring Tool Suite (STS) を使用してプロジェクトを作成しましたが、IntelliJ IDEA Community版ではWebツールのSpring Initializrを使用してプロジェクトの雛形を作成します。
Ultimate版ではSpring Initializrプロジェクトウィザードが提供されているので、公式ドキュメントに沿ってプロジェクトを作成後、当記事のControllerクラスを作成するから試してみてください。

IntelliJ IDEAでSpring BootとThymeleafの実行環境を構築する

手順は以下のとおりです。

  1. Spring Initializrでプロジェクトの雛形を作成する
  2. IntelliJ IDEAでプロジェクトを作成する
  3. Controllerクラスを作成する
  4. テンプレートを作成する
  5. Spring Bootを起動する

Spring Initializrでプロジェクトの雛形を作成する

Spring Initializrにアクセスし、GENERATEボタンを押下します。
プロジェクトの雛形であるzipファイル (demo.zip) のダウンロードが開始されるので、任意の保存先を選択してダウンロードします。ダウンロードしたzipファイルは解凍しておいてください。

IntelliJ IDEAでプロジェクトを作成する

Spring Initializrで作成したプロジェクトの雛形からIntelliJ IDEAでプロジェクトを作成します。

  1. IntelliJ IDEAを起動
  2. [Open] を押下
  3. 解凍しておいたフォルダ (demo) を選択

Trust and Open Project ‘demo’? と表示された場合、Trust projects in ~ にチェックし [Trust Project] を押下してください。
IntelliJ IDEAでは未知のソースコードを含むプロジェクトを開こうとした際に、セキュリティリスクを防ぐための通知が行われます。プロジェクトのセキュリティ

プロジェクトを開いた後、Unresolved plugin: 'org.apache.maven.plugins:maven-site-plugin:3.12.1 のようなエラーが出ている場合、以下の手順でプロジェクトを再読み込みします。

  1. 画面右上のベルの下にある [m] (Maven) を押下
  2. 表示されたMavenパネルのプロジェクト demo で右クリック
  3. [Reload project] を押下

Controllerクラスを作成する

  1. src/main/java/com/example/demo で右クリック
  2. [New] > [Java Class] を押下
  3. controller.HomeController を入力してenterキーを押下
package com.example.demo.controller;

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

@Controller
public class HomeController {

    @GetMapping("/")
    public String index(Model model) {
        model.addAttribute("name", "from Spring Boot and Thymeleaf");

        return "index";
    }
}

テンプレートを作成する

  1. src/main/resources/templates で右クリック
  2. [New] > [HTML File] を押下
  3. index を入力してenterキーを押下
<!DOCTYPE html>
<html lang="ja" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>demo</title>
</head>
<body>
    <h1>Hello <span th:text="${name}">World</span></h1>
</body>
</html>

Spring Bootを起動する

  1. src/main/java/com/example/demo/DemoApplication で右クリック
  2. [Run ‘DemoApplication.main()’] を押下
  3. http://localhost:8080にアクセス

以下のように表示されます。

http://localhost:8080にアクセスした際のスクリーンショット

起動時に java: 警告:ソース・リリース17にはターゲット・リリース17が必要です のようなエラーが出ている場合、メニューの [File] > [Project Structure] を押下して使用しているSDKのバージョンを確認します。
今回はJDK17が必要なので例えば [Oracle OpenJDK version 17.0.2] を選択、[OK] ボタンを押下した後、再度Spring Bootを起動してください。

お疲れさまでした

今回は、IntelliJ IDEAでSpring BootとThymeleafの実行環境を構築しました。
所感としては、IntelliJ IDEAのUIが予想以上に心地良かったです。無料 (Community) 版でしばらく使用してみて物足りないようであれば有料 (Ultimate) 版へのアップグレードを検討するつもりです。