thymeleaf之fragment

MUEAS项目,web前端采用thymeleaf作为展示层。这个view解析器,个人觉得非常不错。简单而且性能也比较好!个人觉得比JSP和freemarker之类,简单易用!

今天简单记录一下fragment的使用,这个类是JSP的tag,但是确非常简单。直接在html文件中,将自己觉得可能在多个地方出现的元素块用fragment包起来!

例如:

 1 <!DOCTYPE html>
 2 <html>
 3   <head>
 4     ...
 5   </head>
 6   <body>
 7     <div th:fragment="footer">
 8       &copy; 2013 Footer
 9     </div>
10   </body>
11 </html>

在使用的地方,再用include标签将其引入即可!

例如:

 1 <!DOCTYPE html>
 2 <html>
 3   <head>
 4     <!--/*  Each token will be replaced by their respective titles in the resulting page. */-->
 5     <title layout:title-pattern="$DECORATOR_TITLE - $CONTENT_TITLE">Task List</title>
 6     ...
 7   </head>
 8   <body>
 9     <!--/* Standard layout can be mixed with Layout Dialect */-->
10     <div th:replace="fragments/header :: header">
11       ...
12     </div>
13     <div class="container">
14       <div layout:fragment="content">
15         <!-- ============================================================================ -->
16         <!-- This content is only used for static prototyping purposes (natural templates)-->
17         <!-- and is therefore entirely optional, as this markup fragment will be included -->
18         <!-- from "fragments/header.html" at runtime.                                     -->
19         <!-- ============================================================================ -->
20         <h1>Static content for prototyping purposes only</h1>
21         <p>
22           Lorem ipsum dolor sit amet, consectetur adipiscing elit.
23           Praesent scelerisque neque neque, ac elementum quam dignissim interdum.
24           Phasellus et placerat elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
25           Praesent scelerisque neque neque, ac elementum quam dignissim interdum.
26           Phasellus et placerat elit.
27         </p>
28       </div>
29       <div th:replace="fragments/footer :: footer">&copy; 2014 The Static Templates</div>
30     </div>
31   </body>
32 </html>

注意:th:fragment定义的片段,在需要的地方,可以用th:include或者th:replace进行带入!

还有,所有的fragment可以写在一个文件里面,也可以单独存在。可以是一个html文件中的一部分。只要你需要,带上th:fragment的标签进行定义,让其为一个fragment即可。有点需要注意的是,片段所在的文件的路径,要用“/”分开路径,根路径为templates所在的路径。

比如:

 1 <body>
 2     <div class="container">
 3         <div th:include="exam/special/geeker/geeker::geeker-base-header"></div>
 4         <div class="geeker-content">
 5             <div th:include="exam/special/geeker/geeker::geeker-base-left"></div>
 6             <div class="geeker-main">
 7             </div>
 8             <div class="geeker-right">
 9             </div>
10         </div>
11     </div>
12 </body>

是不是很简单易用?我觉得很不错!

时间: 2025-01-06 09:47:54

thymeleaf之fragment的相关文章

利用thymeleaf的fragment实现mini购物车

后台 java 代码 @GetMapping("/minicart")public String minicart(@CookieValue(value = "list_cart_cookie",required = false) String list_cart_cookie,HttpSession session,Model model){ if (UserLoginUtil.load() == null) { if(StringUtils.isBlank(li

SPRING + THYMELEAF 配置

1.使用的是Spring EL而不是Ognl.2.访问上下文的Bean用${@myBean.doSomething()}3.th:field,th:errors,th:errorclass用于form processing.4.要采用SpringTemplateEngine.5.基本配置: <bean id="templateResolver"       class="org.thymeleaf.templateresolver.ServletContextTempl

Thymeleaf模板引擎+Spring整合使用方式的介绍

尊重原创,原文地址为:https://www.cnblogs.com/jiangchao226/p/5937458.html 前言 这个教程介绍了Thymeleaf与Spring框架的集成,特别是SpringMvc框架. 注意Thymeleaf支持同Spring框架的3.和4.版本的集成,但是这两个版本的支持是封装在thymeleaf-spring3和thymeleaf-spring4这两个独立的库中,项目中需要根据实际情况分别引用. 样例代码针对的是spring4.,但一般情况下,spring

最近做了一个Spring Boot小项目,大家帮忙找找bug吧, http://www.dbeetle.cn

最近做了一个Spring Boot小项目,网站顶部有源码地址,欢迎大家访问 http://www.dbeetle.cn 欢迎各位访问,提出意见,找找bug 网站说明 甲壳虫社区(Beetle Community) 一个开源的问答社区.论坛博客,您可以提出自己的问题.发布自己的文章.和其他用户交流 目前功能有第三方登陆.查看.发布.评论.消息通知.顶置.一键已读.搜索等 后续会不断更新完善,欢迎大家提供更好的建议 使用技术 Spring Boot.Mybatis.Thymeleaf.BootStr

Spring Web MVC框架(十二) 使用Thymeleaf

Thymeleaf简介 前面的例子我们使用的视图技术主要是JSP.JSP的优点是它是Java EE容器的一部分,几乎所有Java EE服务器都支持JSP.缺点就是它在视图表现方面的功能很少,假如我们想迭代一个数组之类的,只能使用<% %>来包括Java语句进行.虽然有标准标签库(JSTL)的补足,但是使用仍然不太方便.另外JSP只能在Java EE容器中使用,如果我们希望渲染电子邮件之类的,JSP就无能为力了. Java生态圈广泛,自然有很多视图框架,除了JSP之外,还有Freemarker.

thymeleaf layout

摘自:https://tomoya92.github.io/2017/03/09/thymeleaf-layout/ thymeleaf的layout常用的有两种方式用法 第一种将页面里的每个部分都分成 块 -> fragment 使用 th:include 和 th:replace 来引入页面这种用法没有layout的概念, 因为每个部分都是 fragment, 下面例子说明 <!-- index.html --> <html> <head> <meta

Spring-boot(二)--thymeleaf

Java代码 @Controller @RequestMapping("/") public class MessageController { private final MessageRepository messageRepository; @Autowired public MessageController(MessageRepository messageRepository) { this.messageRepository = messageRepository; }

SpringBoot(5)新一代Java模板引擎Thymeleaf

Thymeleaf是一款用于渲染XML/XHTML/HTML5内容的模板引擎.类似JSP,Velocity,FreeMaker等,它也可以轻易的与Spring MVC等Web框架进行集成作为Web应用的模板引擎.与其它模板引擎相比,Thymeleaf最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个Web应用. Thymeleaf初探 相比于其他的模板引擎,Thymeleaf最大的特点是通过HTML的标签属性渲染标签内容,以下是一个Thymeleaf模板例子: <!DOCTY

SpringBoot (四) :thymeleaf 使用详解

原文出处: 纯洁的微笑 在上篇文章< springboot(二):web综合开发 >中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用.thymeleaf 是新一代的模板引擎,在spring4.0中推荐使用thymeleaf来做前端模版引擎. thymeleaf介绍 简单说, Thymeleaf 是一个跟 Velocity.FreeMarker 类似的模板引擎,它可以完全替代 JSP .相较与其他的模板引擎,它有如下三个极吸引人的特点: 1.Thymele