小呆呆的生活

  • 首页
  • 分类
    • Linux
    • MySQL
    • SpringBoot
    • SpringCloud
  • 工具
  • 留言
  • 登录
  • 注册
  • 友情链接
    • 咸鱼的窝
    • DIY熙的家
    • Farmer的自习室
    • Dark的小黑屋
  • 关于
人的一生注定会遇到两个人
一个惊艳了时光,一个温柔了岁月
  1. 首页
  2. SpringBoot框架
  3. 正文

Thymeleaf的简单介绍

2020年 3月 30日 1273次阅读 1人点赞 1条评论

特点:

  • 动静结合:Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。
  • 开箱即用:它提供标准和spring标准两种方言,可以直接套用模板实现JSTL、 OGNL表达式效果,避免每天套模板、该jstl、改标签的困扰。同时开发人员也可以扩展和创建自定义的方言。
  • 多方言支持:Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。
  • 与SpringBoot完美整合,SpringBoot提供了Thymeleaf的默认配置,并且为Thymeleaf设置了视图解析器,我们可以像以前操作jsp一样来操作Thymeleaf。代码几乎没有任何区别,就是在模板语法上有区别。

示例代码:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" media="all"
          href="../../css/gtvg.css" th:href="@{/css/gtvg.css}" />
    <title>Title</title>
</head>
<body>
    <p th:text="#{hello}">欢迎进入Thymeleaf的学习</p>
</body>
</html>

常用标签:

th:标签 说明
th:insert 页面片段包含(类似JSP中的include标签)
th:replace 页面片段包含(类似JSP中的include标签)
th:each 元素遍历(类似JSP中的c:forEach标签)
th:if 条件判断,如果为真
th:unless 条件判断,如果为假
th:switch 条件判断,进行选择性匹配
th:case 条件判断,进行选择性匹配
th:object 变量声明
th:with 变量声明
th:attr 通用属性修改
th:attrprepend 通用属性修改,将计算结果追加前缀到现有属性值
th:attrappend 通用属性修改,将计算结果追加后缀到现有属性值
th:value 属性值修改,指定标签属性值
th:href 用于设定链接地址
th:src 用于设定链接地址
th:text 用于指定标签显示的文本内容
th:utext 用于指定标签显示的文本内容,对特殊标签不转义
th:fragment 声明片段
th:remove 移除片段

主要语法:

表达式 说明 表达式用法
变量表达式 获取上下文中的变量值 ${...}
选择变量表达式 用于从被选定对象获取属性值 *{...}
消息表达式 用于Thymeleaf模板页面国际化内容的动态替换和展示 #{...}
链接URL表达式 用于页面跳转或者资源的引入 @{...}
片段表达式 用来标记一个片段模板,并根据需要移动或传递给其他模板。 ~{...}

内置对象:

  • #ctx:上下文对象
  • #vars:上下文变量
  • #locale:上下文区域设置
  • #request:(仅限Web Context)HttpServletRequest对象
  • #response:(仅限Web Context)HttpServletResponse对象
  • #session:(仅限Web Context)HttpSession对象
  • #servletContext:(仅限Web Context)ServletContext对象
本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 前端
最后更新:2021年 7月 11日

小呆呆

知足常乐,就会拥有幸福

点赞
< 上一篇
下一篇 >

文章评论

  • 与罗摩相会

    test

    2022年 1月 29日
    回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    取消回复

    小呆呆

    知足常乐,就会拥有幸福

    最新 热点 随机
    最新 热点 随机
    本站暂时停止更新,后续文章将在CSDN更新 数据库索引简析 Java多线程的使用场景以及线程的创建方式 Spring事务的使用示例和传播行为以及失效场景 Spring Boot使用JUnit和Mockito进行Service层单元测试 Spring Cloud Zuul和Gateway的简单示例(搭建方式)
    Spring Cloud Zuul和Gateway的简单示例(搭建方式) Thymeleaf的简单介绍 Eureka Server快速搭建 IntelliJ IDEA软件内如何更新到最新版本 解决Spring Initializr只能创建为Java 17版本以上的问题 Spring Cloud Eureka的理解以及搭建方式(实现示例)
    标签聚合
    后端 SpringBoot 干货 面试 Spring MySQL SpringCloud Java
    最近评论
    我是可是尼古拉斯·爱新觉·罗·G·钰豪啊 发布于 4 年前(04月08日) 我来注水了胜哥 :hehe:
    鸟人金 发布于 4 年前(03月03日) v
    鸟人金 发布于 4 年前(03月03日) 胜哥yyds
    鸟人金 发布于 4 年前(03月03日) 我滴偶像!!!!!!!!!!!!!!!
    水军2号 发布于 4 年前(03月03日) 胜哥tql
    归档
    • 2024 年 4 月
    • 2024 年 2 月
    • 2024 年 1 月
    • 2023 年 12 月
    • 2023 年 11 月
    • 2023 年 10 月
    • 2023 年 8 月
    • 2023 年 6 月
    • 2022 年 11 月
    • 2022 年 8 月
    • 2022 年 6 月
    • 2022 年 4 月
    • 2022 年 3 月
    • 2022 年 1 月
    • 2021 年 12 月
    • 2021 年 9 月
    • 2021 年 8 月
    • 2021 年 6 月
    • 2021 年 4 月
    • 2020 年 10 月
    • 2020 年 9 月
    • 2020 年 8 月
    • 2020 年 7 月
    • 2020 年 6 月
    • 2020 年 5 月
    • 2020 年 4 月
    • 2020 年 3 月

    COPYRIGHT © 2023 小呆呆的生活. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang

    粤ICP备2020104583号

    粤公网安备44011802000463号