>  기사  >  Java  >  SpringBoot에 Thymeleaf를 도입하는 방법 소개(코드)

SpringBoot에 Thymeleaf를 도입하는 방법 소개(코드)

不言
不言앞으로
2019-04-04 10:15:082997검색

本篇文章给大家带来的内容是关于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: 8000
spring:
  thymeleaf:
    cache: false # 关闭页面缓存
    encoding: UTF-8 # 模板编码
    prefix: classpath:/templates/  # 页面映射路径
    suffix: .html # 试图后的后缀
    mode: HTML5 # 模板模式

# 其他具体配置可参考org.springframework.boot.autoconfigure.thymeleaf.ThymeleafProperties
# 上面的配置实际上就是注入该类的属性值
demo示例

创建IndexController

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

}

创建index.html

nbsp;html>


    <meta>
    <title>Title</title>


    Hello Thymeleaf!

 创建TestController

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

创建test.html

nbsp;html>


    <meta>
    <title>Title</title>


Hello Thymeleaf! 
By: ModelAndView

3、测试结果
SpringBoot에 Thymeleaf를 도입하는 방법 소개(코드)

SpringBoot에 Thymeleaf를 도입하는 방법 소개(코드)

4、Thymeleaf基础语法及使用

引入标签  

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

引入URL  

@{...}  

例如:

<a>绝对路径</a> 是访问绝对路径下的URL, <a>相对路径</a> 是访问相对路径下的URL。
<a>是引入默认的static下的css文件夹下的bootstrap文件,类似的标签有: th:href 和 th:src</a>

3.获取变量  

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

4.字符串替换

<span></span>
或者
<span></span>
注意:|…|中只能包含变量表达式${…},不能包含其他常量、条件表达式等

5.运算符   

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

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

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

<a>Login</a>

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

<p>
     </p><p>User is an administrator</p>
     <p>User is a manager</p>
     <p>User is some other thing</p>

7.循环

<tr>
    <td>Onions</td>
    <td>2.41</td>
    <td>yes</td>
</tr>

8.Utilities

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

5.小结

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

【相关推荐:Java视频教程

위 내용은 SpringBoot에 Thymeleaf를 도입하는 방법 소개(코드)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제