Thymeleaf教程(一)简介

logo

Thymeleaf,来看一下logo。

what

Thymeleaf是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发。它是一个开源的Java库,基于Apache License 2.0许可,由Daniel Fernandez创建,该作者还是Java加密库Jasypt的作者。

Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP,或其他模板引擎,如Velocity、FreeMarker等。

更新情况

2017年3月29日,Thymeleaf 3.0.5已经公布,包括对Spring 5(Spring MVC and Spring WebFlux)的最新模块的一个更新。

主要目标

Thymeleaf的主要目标是为你的开发工作流程带来优雅的的自然模板-可以在浏览器中正确地显示HTML,还可以作静态原型工作,从而在开发团队中进行更强大的协作。

Themeleaf是现代HTML JVM Web开发的理想选择,使用Spring Framework的模块,与您最喜爱的工具进行大量集成,以及能够嵌套进自己的功能,还可以做得更多。

自然模板

用Thymeleaf编写的HTML模板仍然像HTML一样工作,让在应用程序中运行的实际模板继续作为有用的设计工件。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。接下来,这些标签属性就会在DOM上执行预先制定好的逻辑。

<table>
  <thead>
    <tr>
      <th th:text="#{msgs.headers.name}">Name</th>
      <th th:text="#{msgs.headers.price}">Price</th>
    </tr>
  </thead>
  <tbody>
    <tr th:each="prod: ${allProducts}">
      <td th:text="${prod.name}">Oranges</td>
      <td th:text="${#numbers.formatDecimal(prod.price, 1, 2)}">0.99</td>
    </tr>
  </tbody>
</table>

集成化

Eclipse, IntelliJ IDEA, Spring, Play,   甚至即将推出的用于Java EE 8  的Model-View-Controller API。使用您最喜欢的Web开发框架,在您最喜欢的工具中编写Thymeleaf。

谁在使用Thymeleaf

很多公司都在用,但是这里有几家公司已经很善于为我们提供关于他们如何用上Thymeleaf和如何使用他们。


                                                                                               部分翻译自Thymeleaf官网,http://www.thymeleaf.org/  

福利:freemarker、thymeleaf和velocity取舍

目前前两者都还有更新,有团队支持。而velocity已经6年没更新了。

我们再来对比前两者:目前了解,性能方面thymeleaf更差,但是它由于使用了标签属性作为语法,模板页面直接用浏览器渲染,使得前端和后段可以并行开发。freemarker使用</>这样的语法,就无法直接使浏览器渲染出原本页面的样子。

很难说两个谁好谁坏,都有各自的优点和不足,但目前来看,themeleaf在资料中出现得更多一些,IDEA中直接提供了thymeleaf的framework支持。但是也有网友诟病thymeleaf性能问题的更多,夸奖的没几个。具体在项目中选用哪个,还得看实际需要。






  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值