このブログでは、主にSpringBoot統合Thymleafテンプレートの使用と、springbootのマッピングルールについて説明しています。
目次
Thymleafの統合を学ぶ前に、Springbootのマッピング構成を見てみましょう。これを理解した後は、学ぶのはばかげたことではありません。多くの人が、使い方を学びたいだけでなく、何かを学んでいると思います。次のアイデアに従ってください。学ぶために編集者の。
静的リソースに対するSpringBootのマッピングルール
1.構成ストレージアドレスを理解する
使用する前に、考えを簡単に説明してください。springbootをそのまま使用する理由は、フレームワーク内でさまざまなフレームワーク構成が構成されているためです。これには、thymeleafも含まれます。
この自動構成パッケージには、さまざまなフレームワーク構成が含まれています。
xxxxAutoConfiguration:コンテナ内のコンポーネントを自動的に構成するのに役立ちます
。xxxxProperties:構成ファイルのコンテンツをカプセル化するための構成クラス。
上記の内容を理解した後、SpringbootのSpringMVCのデフォルト構成を簡単に見てみましょう。
ページジャンプや静的リソースなどはすべてSpringMVCによって実行されます。
自動構成パッケージの下のサーブレットパッケージの下にあるWebMvcAutoConfigurationクラスは、springbootによって構成されたSpringMVC構成ファイルです。
2.静的リソースアドレスを理解します
ページアクセスアドレスと静的リソースアクセスアドレスは、この構成ファイルで構成されます。
http:// localhost:8080 /
この新しいプロジェクトにアクセスすると、次のディレクトリに移動してindex.htmlを検索します。
静的リソースストレージアドレスは次のとおりです。それぞれに問題はありません。
"Classpath:/ META‐INF / resources /"、
"classpath:/ resources /"、
"classpath:/ static /"、
"classpath:/ public /"、
"/":現在のプロジェクトのルートパス
3.ico設定
次に、ブラウザのicoも上記の静的ディレクトリに移動して検索します
ここで、写真に基づいてiocを生成するためのWebサイトを見つけました。これ
を使用して、写真に基づいてicoを生成できます:https://www.csdn.net/ 。
icoが何であるかを知らない人もいるかもしれません。通常、各Webサイトには独自のicoがあります。上記のWebサイトを使用して、独自のicoを生成し、静的リソースディレクトリに配置できます。
この時点で私たちのプロジェクトにアクセスすると、アイコンが私たちが保存したico画像であることがわかります。
4.注意が必要なもの
Thymleafの依存関係が参照されていない場合、エラーが報告されます
@RequestMapping("/index")
public String index(){
return "index";
}
thymeleafの予備的な理解
Thymeleafは、XML / XHTML / HTML5コンテンツをレンダリングするためのテンプレートエンジンです。JSP、Velocity、FreeMakerなどと同様に、テンプレートエンジンとは何ですか?開発にspringbootを使用しない場合、テンプレートエンジンとしてJSPを使用することがよくあります。
Springbootは組み込みのTomcatであり、JSPをサポートしていません。純粋なhtmlを使用して開発する場合、リストなどをループするのは非常に不便です。
Spring Bootは、ThymeleafやFreemarkerなどのポストモダンテンプレートエンジンテクノロジーの使用を推奨しています。関連する依存関係がインポートされると、ThymeleafAutoConfigurationとFreeMarkerAutoConfigurationが自動的に構成されます。
SpringBootによるthymeleafの設定は、autoconfigureパッケージの下のこの場所に保存されます。知りたい場合は、自分で開いて大まかなアイデアを得ることができます。
ここから、springbootが構成したthymeleafページアドレスを確認できます。
HTMLページをclasspath:/ templates /に配置している限り、thymeleafは自動的にレンダリングされます。
SpringBootはthymeleafの使用を統合します
次に、例を使用してその使用法を示します
1.スターター-thymeleafをインポートします
ここにすべてのデモの依存関係を投稿し、それらを使用するときに迂回を避けるようにしています。ここで使用するspringbootのバージョンは2.4.1です。
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
使用しているspringbootのバージョンが低い場合、springbootによって管理されているバージョンのthymeleafのバージョンは低くなっています。
この場合、thymeleafは一般的にバージョン3.0以降を使用することをお勧めします。これは、比較的言えば、2.0よりもはるかに多いためです。
ここでのレイアウトはレイアウト機能のサポートプログラムであり、thymeleaf3のメインプログラムはlayout2以降を使用する必要があります。
現時点では、自分でバージョンを変更して、thymeleaf3バージョンを使用させることができます。
<properties>
<thymeleaf.version>3.0.9.RELEASE</thymeleaf.version>
<!-- 布局功能的支持程序 thymeleaf3主程序 layout2以上版本 -->
<!-- thymeleaf2 用的是 layout1-->
<thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>
</properties>
2.テンプレートフォルダにテンプレートファイルを作成します
注:thymeleafによって作成されたhtmlを使用し、名前空間を導入する必要があります。
名前空間関数:文法のヒント、文法の検証などを提供できます。
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<hr/>
<!-- th:each每次遍历都会生成当前这个标签: 3个h4 -->
<h4 th:text="${user}" th:each="user:${users}"></h4>
<hr/>
</body>
</html>
3.テストインターフェース
package com.gzl.cn.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.Arrays;
import java.util.Map;
@Controller
public class HelloController {
//查出用户数据,在页面展示
@RequestMapping("/success")
public String success(Map<String,Object> map){
map.put("hello","<h1>你好</h1>");
map.put("users",Arrays.asList("zhangsan","lisi","wangwu"));
return "success";
}
}
4.テストページと値
5.プロジェクトの構造
Thymleaf構文
Thymleafには文法がたくさんあるので、このブログではThymleafの文法については説明しません。ユーザーマニュアルをダウンロードするためのアドレスを提供しますので、Baiduで文法を検索する必要はなく、公式マニュアルを見るだけです。非常に包括的です。
Thymleafテンプレート構文をダウンロードする
thymeleaf 0042י:https://www.thymeleaf.org/documentation.html。
公式サイトは純英語で、百度で検索した中国語のマニュアルです。直接ダウンロードして学ぶことができます。
ダウンロードリンク:リンク:http
://pan.baidu.com/s/1dEOIuPF 。パスワード:y1lz
総括する
相対的に言えば、Springbootを使用してThymleafを統合する場合、構成はまったくありません。springbootはすでに構成済みであり、マッピングアドレスを覚えておくだけで済みます。