当前位置:   article > 正文

thymeleaf语法及使用

theamleaf用法

模板引擎

简介:模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。 模板引擎的思想: 在这里插入图片描述 Thymeleaf就是SpringBoot给我们推荐的一种模板引擎!

Thymeleaf模板引擎

1.使用Thymeleaf之前的步骤
  1. Thymeleaf 官网:https://www.thymeleaf.org/
  2. springboot项目直接引入依赖:
  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  4. </dependency>

3.非springboot项目直接引入依赖:

  1. <dependency>
  2. <groupId>org.thymeleaf</groupId>
  3. <artifactId>thymeleaf</artifactId>
  4. <version>2.1.4</version>
  5. </dependency>

4.在thymeleaf的配置类ThymeleafProperties中我们可以发现:thymeleaf配置的默认前缀为:"classpath:/templates/",默认后缀为:".html",只要把html页面放在这个路径下,

thymeleaf就可以帮我们自动渲染。

  1. public class ThymeleafProperties {
  2. private static final Charset DEFAULT_ENCODING;
  3. public static final String DEFAULT_PREFIX = "classpath:/templates/";
  4. public static final String DEFAULT_SUFFIX = ".html";
  5. private boolean checkTemplate = true;
  6. private boolean checkTemplateLocation = true;
  7. private String prefix = "classpath:/templates/";
  8. private String suffix = ".html";
  9. private String mode = "HTML";
  10. ...
  11. }

如图为用idea创建的springboot的项目结构:将html页面放在resources/templates中即可。 在这里插入图片描述

2.Thymeleaf语法简单使用(th:text, th:utext, th:each)

编写一个controller实现跳转到一个html页面,通过Model对象携带数据

  1. @Controller
  2. public class HelloController {
  3. @RequestMapping("/success")
  4. public String success(Model model){
  5. //存入数据
  6. model.addAttribute("msg","<h1>Hello</h1>");
  7. model.addAttribute("users", Arrays.asList("小红", "小米","小白"));
  8. //classpath:/templates/success.html
  9. return "success";
  10. }
  11. }

success.html

  1. <!DOCTYPE html>
  2. <html lang="en" xmlns:th="http://www.thymeleaf.org">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <h1>success</h1>
  9. <!--Thymeleaf语法:th:text就是将div中的内容设置为它指定的值-->
  10. <div th:text="${msg}">你好</div>
  11. <!--utext:会解析html,显示相应的效果-->
  12. <div th:utext="${msg}">你好</div>
  13. <!--each:遍历-->
  14. <h3 th:each="user:${users}" th:text="${user}"></h3>
  15. </body>
  16. </html>

通过http://localhost:8080/success路径访问到success.html页面,同时成功显示数据:在这里插入图片描述

3.Thymeleaf基本语法(属性和表达式)

Thymeleaf标准表达式

  1. 变量表达式:${ }:用于前端获取后端传递的变量值

  2. 选择表达式:*{ }:用于绑定一个对象的属性

  3. URL链接表达式:@{ }:用于链接

  4. 条件表达式:三目运算符(表达式 ?值(then):值(else))

Thymeleaf属性标签: 在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/沉思者/article/detail/62688
推荐阅读
相关标签
  

闽ICP备14008679号