| タイムリーフ | |
|---|---|
| 開発者 | ダニエル・フェルナンデス |
| 安定版リリース | 3.1.3 [1]
/ 2024年12月9日 ( 2024-12-09 ) |
| 書かれた | ジャワ |
| オペレーティング·システム | クロスプラットフォーム |
| 標準 | XML、XHTML、HTML5 |
| タイプ | テンプレートエンジン |
| ライセンス | Apacheライセンス2.0 |
| Webサイト | www.thymeleaf.org |
Thymeleafは、Web(サーブレットベース)環境と非Web環境の両方で動作するJava XML / XHTML / HTML5 テンプレートエンジンです。MVCベースのWebアプリケーションのビュー層でXHTML/HTML5を提供するのに適していますが、オフライン環境でもあらゆるXMLファイルを処理できます。Spring Frameworkとの完全な統合を提供します。
Web アプリケーションでは、Thymeleaf はJavaServer Pages (JSP)の完全な代替となることを目指しており、ブラウザーで直接開いても Web ページとして正しく表示されるテンプレート ファイルであるNatural Templatesの概念を実装しています。
Thymeleaf は、 Apache License 2.0に基づいてライセンスされるオープンソース ソフトウェアです。
特徴
プロジェクトのウェブサイトから:[2]
- XML、XHTML、HTML5用のJavaテンプレート エンジン。
- Web環境と非Web環境(オフライン)の両方で動作します。Servlet APIへの依存はゼロです。
- 方言と呼ばれるモジュール機能セットに基づいています。
- 方言機能 (例: 評価、反復など) は、テンプレートのタグや属性にリンクすることによって適用されます。
- すぐに使用できる 2 つの方言: Standard と SpringStandard ( Spring MVCアプリ用、Standard と同じ構文)。
- 開発者はカスタム方言を拡張および作成できます。
- いくつかのテンプレート モード:
- 完全な(そして拡張可能な)国際化サポート。
- 入出力を最小限に抑える、構成可能な高性能解析テンプレート キャッシュ。
- テンプレートと結果コードの両方の検証 (オプション) のための、テンプレートDTDから結果 DTD への自動 DOCTYPE 変換。
- 非常に拡張性が高く、必要に応じてテンプレート エンジン フレームワークとして使用できます。
- いくつかのサンプルアプリケーションを含む完全なドキュメント。
Thymeleafの例
次の例では、 allProductsというList<Product>変数の各項目の行を含む HTML5 テーブルを生成します。
< table >
< thead >
< tr >
< th th:text = "#{msgs.headers.name}" >名前</ th >
< th th:text = "#{msgs.headers.price}" >価格</ th >
</ tr >
</ thead >
< tbody >
< tr th:each = "prod : ${allProducts}" >
< td th:text = "${prod.name}" >オレンジ</ td >
< td th:text = "${#numbers.formatDecimal(prod.price,1,2)}" > 0.99 </ td >
</ tr >
</ tbody >
</ table >
このコードには次の内容が含まれます。
- 国際化式: #{ ... } rh
- 変数/モデル属性評価式: ${...}
- ユーティリティ関数: #numbers.formatDecimal( ... )
また、この (X)HTML コードのフラグメントは、まったく処理されずにプロトタイプとしてブラウザで完全に表示できます。つまり、自然なテンプレートです。
参照
参考文献
- ^ 「Thymeleaf 3.1: 新機能と移行方法 - Thymeleaf」。
- ^ “Features - Thymeleaf: Java XML/XHTML/HTML5 テンプレートエンジン”. 2011年10月8日時点のオリジナルよりアーカイブ。2011年10月16日閲覧。Thymeleafの機能
外部リンク
- タイムリーフ