小兔网

本篇文章给大家带来的内容是关于SpringBoot引入Thymeleaf的方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1、Thymeleaf简介

Thymeleaf是个XML/XHTML/HTML5模板引擎,可以用于Web与非Web应用
Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模,Thymeleaf的可扩展性也非常棒。你可以使用它定义自己的模板属性集合,这样就可以计算自定义表达式并使用自定义逻辑,Thymeleaf还可以作为模板引擎框架。

2、引入Thymeleaf

引入依赖

在maven(pom.xml)中直接引入:

<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-web</artifactId></dependency>
配置Thymeleaf

在application.yml配置Thymeleaf

server:  port: 8000spring:  thymeleaf:    cache: false # 关闭页面缓存    encoding: UTF-8 # 模板编码    prefix: classpath:/templates/  # 页面映射路径    suffix: .html # 试图后的后缀    mode: HTML5 # 模板模式# 其他具体配置可参考org.springframework.boot.autoconfigure.thymeleaf.ThymeleafProperties# 上面的配置实际上就是注入该类的属性值
demo示例

创建IndexController

@Controllerpublic class IndexController {    // 返回视图页面    @RequestMapping("index")    public String index(){        return "index";    }}

创建index.html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body>    Hello Thymeleaf!</body></html>

创建TestController

@RestControllerpublic class TestController {        // 返回整个页面    @RequestMapping("/test")    public ModelAndView test(){        return new ModelAndView("test");    }}

创建test.html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body>Hello Thymeleaf! </br>By: ModelAndView</body></html>

3、测试结果
SpringBoot引入Thymeleaf的方法介绍(代码)

SpringBoot引入Thymeleaf的方法介绍(代码)

4、Thymeleaf基础语法及使用

引入标签

html标签里引入xmlns:th="http://www.thymeleaf.org"才能使用th:*这样的语法

引入URL

@{...}

例如:

<a th:href="https://zhishitu.com/ke" 是访问绝对路径下的URL, <a th:href="https://zhishitu.com/ke" 是访问相对路径下的URL。<a th:href="https://zhishitu.com/ke" th:href 和 th:src

3.获取变量

通过${}取值,对于JavaBean的话,使用变量名.属性名获取

4.字符串替换

<span th:text="'Welcome to our application, ' + ${user.name} + '!'"></span>或者<span th:text="|Welcome to our application, ${user.name}!|"></span>注意:|…|中只能包含变量表达式${…},不能包含其他常量、条件表达式等

5.运算符

在表达式中可以使用各类算术运算符
例如 (+, -, *, /, %)
例如:th:with="isEven=(${stat.number} % 1 == 0)"
逻辑运算符 (>, <, <=,>=,==,!=)
需要注意的是使用<,>的时候需要转义

th:if="${stat.number} &gt; 1"th:text="'Execution mode is ' + ( (${execMode} == 'dev')? 'Development' : 'Production')"

6.条件
if/unless th:if是该标签在满足条件的时候才会显示,unless是不成立时候才显示

<a th:href="https://zhishitu.com/ke" th:unless=${user.number != null}>Login</a>

switch thymeleaf支持switch结构,默认属性(default)用*表示

<p th:switch="${user.role}">     <p th:case="'admin'">User is an administrator</p>     <p th:case="#{roles.manager}">User is a manager</p>     <p th:case="*">User is some other thing</p></p>

7.循环

<tr th:each="prod : ${prods}">    <td th:text="${prod.name}">Onions</td>    <td th:text="${prod.price}">2.41</td>    <td th:text="${prod.inStock}? #{true} : #{false}">yes</td></tr>

8.Utilities

内置在Context中,可以直接通过#访问#dates  #calendars  #numbers  #strings  arrays   lists  sets   maps   …

5.小结

本文讲述了如何在Spring Boot中引入模板引擎Thymeleaf以及Thymeleaf基础语法和实际使用

【相关推荐:Java视频教程

以上就是SpringBoot引入Thymeleaf的方法介绍(代码)的知识。速戳>>知识兔学习精品课!