标签
在HTML页面上使用Thymeleaf标签,Thymeleaf 标签能够动态地替换掉静态内容,使页面动态展示。为了大家更直观的认识Thymeleaf,下面展示一个在HTML文件中嵌入了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" rel="external nofollow" th:href="@{/css/gtvg.css}" rel="external nofollow" /> <title>Title</title> </head> <body> <p th:text="${hello}">欢迎进入Thymeleaf的学习</p> </body> </html>
thymelef常用标签
标准表达式
主要用于获取上下文中的变量值,示例代码如下:
<p th:text="${title}">这是标题</p>
Thymeleaf为变量所在域提供了一些内置对象,具体如下所示
# ctx:上下文对象 # vars:上下文变量 # locale:上下文区域设置 # request:(仅限Web Context)HttpServletRequest对象 # response:(仅限Web Context)HttpServletResponse对象 # session:(仅限Web Context)HttpSession对象 # servletContext:(仅限Web Context)ServletContext对象
假设要在Thymeleaf模板引擎页面中动态获取当前国家信息,可以使用
#locale内置对象,示例代码如下
The locale country is: <span th:text="${#locale.country}">US</span>
和变量表达式用法类似,一般用于从被选定对象而不是上下文中获取属性值,如果没有选定对象,则和变量表达式一样,示例代码如下
<div th:object="${book}"> <p>titile: <span th:text="*{title}">标题</span>.</p> </div>
*{title} 选择变量表达式获取当前指定对象book的title属性值。
消息表达式#{…}主要用于Thymeleaf模板页面国际化内容的动态替换和展示,使用消息表达式#{…}进行国际化设置时,还需要提供一些国际化配置文件。
链接表达式@{…}一般用于页面跳转或者资源的引入,在Web开发中占据着非常重要的地位,并且使用也非常频繁
<a th:href="@{http://localhost:8080/order/details(orderId=${o.id})}" rel="external nofollow" >view</a> <a th:href="@{/order/details(orderId=${o.id},pid=${p.id})}" rel="external nofollow" >view</a>
链接表达式@{…}分别编写了绝对链接地址和相对链接地址。
在有参表达式中,需要按照@{路径(参数名称=参数值,参数名称=参数值…)}的形式编写,同时该参数的值可以使用变量表达式来传递动态参数值
片段表达式~{…}用来标记一个片段模板,并根据需要移动或传递给其他模板。其中,最常见的用法是使用th:insert或th:replace属性插入片段
<div th:insert="~{thymeleafDemo::title}"></div>
thymeleafDemo为模板名称,Thymeleaf会自动查找“/resources/templates/”目录下的thymeleafDemo模板,title为片段名称
首先 在Spring Boot项目中使用Thymeleaf模板,首先必须保证引入Thymeleaf依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
其次,在全局配置文件中配置Thymeleaf模板的一些参数。一般Web项目都会使用下列配置
spring.thymeleaf.cache = true #启用模板缓存 spring.thymeleaf.encoding = UTF_8 #模板编码 spring.thymeleaf.mode = HTML5 #应用于模板的模板模式 spring.thymeleaf.prefix = classpath:/templates/ #指定模板页面存放路径 spring.thymeleaf.suffix = .html #指定模板页面名称的后缀
上述配置中:
spring.thymeleaf.cache表示是否开启Thymeleaf模板缓存,默认为true,在开发过程中通常会关闭缓存,保证项目调试过程中数据能够及时响应;
spring.thymeleaf.prefix指定了Thymeleaf模板页面的存放路径,默认为classpath:/templates/;
spring.thymeleaf.suffix指定了Thymeleaf模板页面的名称后缀,默认为.html
到此这篇关于Java基础总结之Thymeleaf模板的文章就介绍到这了,更多相关Java Thymeleaf模板内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。
Copyright © 2009-2022 56dr.com. All Rights Reserved. 特网科技 特网云 版权所有 特网科技 粤ICP备16109289号
域名注册服务机构:阿里云计算有限公司(万网) 域名服务机构:烟台帝思普网络科技有限公司(DNSPod) CDN服务:阿里云计算有限公司 百度云 中国互联网举报中心 增值电信业务经营许可证B2
建议您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流浏览器浏览本网站