この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:atom
更新日時:2026-05-13 04:59:59

タイトル: Thymeleaf

本稿はテンプレートエンジンであるThymeleafについて説明します。

子ページから項目を選択してください。

Thymeleafとは?

ThymeleafとはSpring Bootにて標準的に利用されることが多いテンプレートエンジン。JSPと異なり、Thymeleaf文を含むファイルはそのまま静的HTMLとしても開ける「ナチュラルテンプレート」が特徴で、デザイナーとの分業がしやすい設計になっています。

主な特徴

  • ナチュラルテンプレート — ブラウザで直接開いても壊れない(属性として記述するため)
  • Spring Boot 標準spring-boot-starter-thymeleaf を入れるだけで動く
  • HTML5 / XHTML 準拠 — 名前空間 th: 接頭辞でタグ拡張
  • テンプレート再利用 — フラグメント機能でヘッダー・フッターを共通化
  • 条件分岐・繰り返しth:if, th:each でロジック表現

本ページの子ページ

項目内容
導入方法と基本動作Spring Bootへの組み込みと、最初のテンプレート表示
メッセージ式#{...} での国際化メッセージ参照
テンプレートフラグメント(ヘッダー等の共有化)th:fragment / th:replace による部品化

基本構文の早見

...
用途書き方
変数の埋め込み${user.name}
テキスト表示サンプル
属性指定...
条件分岐

...

繰り返し
URL生成@{/path/to/page}
メッセージ#{label.user.name}
フラグメント

シンプルな例




    Sample


   

Static Title


   

           
  • Dummy

  •    


JSP との違い

項目JSPThymeleaf
記法独自タグ・スクリプトレットHTML属性に th: 追加
静的HTMLとして開けるか不可可(ナチュラルテンプレート)
Spring Boot標準古い(追加設定要)標準サポート
パフォーマンスコンパイル後は高速同等

注意点

  • キャッシュ: 本番では spring.thymeleaf.cache=true(既定)が高速。開発中は false にすると即反映
  • HTML5モード: spring.thymeleaf.mode=HTML(既定)で動く
  • fragment命名: 部品化時の名前衝突に注意

関連