Thymeleaf構文概要

何Thymeleafこと?

   それはアーティストがブラウザで静的ページの効果を確認することができますが、また、プログラマは、サーバ上のデータと動的ページの効果を確認することができますことを1.Thymeleaf Jiekeネットワークの環境下で実行され、非ネットワーク。これは、HTMLのプロトタイプをサポートしているためで、その後、データのhtmlタグテンプレート+表示に達成するために追加の属性を追加します。thymeleafテンプレートを静的に実行することができますので、ブラウザは、未定義のhtmlタグの属性の解釈を無視し、データをページに戻ることがある場合に、Thymeleafラベルは動的、静的コンテンツ、動的な表示ページを置き換えます。

    箱の特性のうち2.Thymeleaf-使用しています。これは、標準と春の標準的な2つの方言を提供し、直接ラベルを変更、JSTLに悩まさJSTLを達成するためのテンプレート、OGNL式の効果、日テンプレートあたりの回避セットを、適用することができます。同時に、開発者が独自の方言を拡張して作成することができます。

    3. Thymeleaf標準の方言と完璧な春を提供し、SpringMVCは、オプションのモジュールを統合し、あなたはすぐにバインディング、プロパティエディタ、国際およびその他の機能のフォームを達成することができます。

   共通の属性:

、番目のプロパティ

共通番目のプロパティの解釈

一部のHTML属性は、Thymeleafは基本的に持っているが、7または8についての共通の属性。請求項1から8番目の優先順位属性が優先順位番号より低い、より高い、行わ。

A、TH:テキスト  :セット現在の要素のテキストコンテンツ、ならびに同様の機能目:のutext両者の違いは、前者は、HTMLタグを逃げない、後者は、あろうということです。優先順位は高くない:オーダー= 7

二つ、THは:値:現在の要素の値を設定し、同様の性質同様の変形は、指定されたTHを:SRCTH:HREFを優先順位は高くない:オーダー= 6

三つ目:各テキストまたは目:値と共に使用ループ素子、及び第スルー。プロパティ変更ラベル、詳細なルックバックの位置に注意してください。高優先度:順= 2

四、TH:IF:条件判断、同様のある場合を除き:THTH:スイッチTH:ケース高い優先度:オーダー= 3

五は、THは:INSERT:コードブロックを導入し、類似ありTH:置き換えTHを:含む、差3つの大きな、不適切な使用は、一般のシーンを抽出し、パブリックコードブロックに使用されるHTML構造を破壊するかどうか。最も高い優先度:オーダー= 1

六、TH:フラグメント:挿入参照:カスタムコードブロックは簡単番目です。最低優先順位:オーダー= 8

七、TH:オブジェクト:変数の宣言、及び一般的効果を達成する遅延* {}、と組み合わせて使用されます。一般優先:オーダー= 4

八、第:ATTR:attrappend、番目:attrprepend他番目のプロパティの富が助けにあるので、あまり実際の開発で、任意のプロパティを変更し、同様の目があります。一般優先:オーダー= 5

プロパティ番目の一般的な使用方法

次の5つの点に注意する使用Thymeleaf属性ポイントは:

まず、Thymeleafの文法を使用するには、最初に名前空間を宣言する必要があります。 xmlns:th="http://www.thymeleaf.org"

テキスト、目の設定値入力:値、出力サイクル目:第二、テキスト番目の各セットを、条件付き目:変数目に宣言断片:挿入、定義されたブロック目:番目のコードブロックに、場合物体

三、目:各使用の必要特別な注意、アナロジー:あなたはdivタグのPにループする場合は、番目:各プロパティは、pタグの上に配置する必要があります。あなたは番目の希望の場合:div要素の各属性を、ループが全体のdivにあります。

第四には、変数式は、多くの組み込みの方法は、この方法は、内蔵#混同しないで下さいメッセージ式}#{で始まることです提供します。

五、第:挿入、目:目、交換してください:コードブロックへの3種類が同様の効果が含まれていますが、非常に異なります。

<!DOCTYPE HTML > 
<! - 名前空間- > 
< HTML LANG = "EN" のxmlns:TH = "http://www.thymeleaf.org" > 
< > 
    < メタのcharset = "UTF-8" > 
    < タイトル> Thymeleaf構文</ タイトル> 
</ ヘッド> 
< 身体> 
    < H2 > ITDragon Thymeleaf構文</ H2 > 
    <! - TH:テキスト要素の現在のテキストは、一般的に、優先度が高くない設定- > 
    <P 番目:テキスト= "$ {} thText" /> 
    < P TH:のutext = "$ {thUText}"  /> 

    <! - TH:現在の要素の設定値値値、一般的に、唯一の優先thより:テキストハイ- > 
    < INPUTのタイプ= "テキスト" TH:値= "$ {thValue}"  /> 

    <! - TH:各トラバースリスト、一般的に、高優先順位、これはコードブロックのみに挿入される- > 
    <! - TH:DIVの各変形、繰り返し層のdiv、pタグだけで横断し、タグをpに変更された場合- > 
    < divのTH:各= "メッセージ:thEach $ {}" >  <! - 全体のp-DIVを通じて、お勧めできません- > 
        < P TH:テキスト= "$} {メッセージ"  /> 
    </ DIV > 
    <DIV >  <! -トラバースpのみ、お勧めします- > 
        < P TH:テキスト= "$ {}メッセージ" TH:各= "メッセージ:thEach $ {}"  /> 
    </ divの> 

    <! - TH:同様の条件判断、IFそこ番目:それぞれ、ビルトイン方式の#strings可変式である:優先番目後ケース、:スイッチ、目- > 
    < P TH:テキスト= "$ {} THIF" TH:IF =「$ないstrings.isEmpty#{(THIF)} " > </ P > 

    <! - TH:INSERTは、コードに最も高い優先度を現在のブロックをDIV、同様の目があります:置き換えるには、目:含まれ、 〜{}: 式のブロック- > 
    < divのTH:INSERT = "〜{文法/共通thCommon} ::" > </ divの> 

    <!- TH:オブジェクト宣言変数、{*}と一緒に使用されます- >
    < divの目:オブジェクト= "$ {thObject}" > 
        < P > ID:< スパン目:テキスト= "* {ID}"  /> </ P > <! - 目:テキスト= "$ {thObject.id }」- > 
        < P > TH:< スパン目:テキスト= "* {thName}"  /> </ P > <! - $ {thObject.thName} - > 
        < P > DE:< スパン番目:テキスト= "* {DESC}"  /> </ P > <!- $ {thObject.desc} - > 
    </ divの> 

</ ボディ> 
</ HTML >

コントローラレベルのコード

輸入com.itdragon.entities.ThObject;
輸入org.springframework.stereotype.Controller;
輸入org.springframework.ui.ModelMap;
輸入org.springframework.web.bind.annotation.RequestMapping。
輸入はjava.util.ArrayList;
輸入java.util.Arrays。
輸入はjava.util.List; 

@Controller 
パブリック クラスThymeleafController { 

    @RequestMapping( "thymeleaf" パブリック文字列thymeleaf(ModelMapマップ){ 
        map.put( "thText"、 "目:テキスト设置文本内容<B>加粗</ B>" ); 
        map.put("thUText"、 "目:のutext設けテキスト<B>太字</ B>" ); 
        map.put( "thValue"、 "現在の要素のthValue設定値" ); 
        map.put( "thEach"、 Arrays.asList( "目:各"、 " リストを横断" )); 
        map.put( "THIF"は、 "MSGがNULLでない" ); 
        map.put( "thObject"、新たな新 thObject(1L、「TH:オブジェクト""怠惰"の第属性));
         戻り "文法/ Thymeleaf " ; 
    } 
}

オリジナルリンク:https://www.cnblogs.com/itdragon/archive/2018/04/13/8724291.html

 

おすすめ

転載: www.cnblogs.com/420ITboy/p/12509138.html