阅读更多
Thymeleaf 2.0正式版发布了。



Thymeleaf是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发。它是一个基于Apache License 2.0许可的开源Java库,由Daniel Fernández(Java加密库Jasypt的作者)创建。Thymeleaf提供了两个版本,分别是Standard dialects(标准方言)和SpringStandard dialects(Spring标准方言,即Spring MVC 3),用户还可以通过创建自定义方言进行扩展。

Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf旨在提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。接下来,这些标签属性就会在DOM(文档对象模型)上执行预先制定好的逻辑。

此次发布的2.0版本包含了大量的改进:

  • 性能提升:该版本包含一个完全重写的模板执行引擎,以及一个几乎重新设计的内部架构,性能较1.1版本有了大幅提升。
  • 在standard dialects 版本中新增了th:switch/th:case属性,th:switch属性与Java语言中的switch语句类似。
  • 在th:remove属性中添加了all-but-first值,可有效节省一些重复代码。
  • 在错误信息中显示错误位置的行号。
  • DOM选择器。
  • 处理不完整模板:之前的Thymeleaf不能处理不完整的XML文件,这限制了Thymeleaf在需要处理片段或高级UI部件情况下的使用,2.0中解决了这个问题。
  • 完全普遍化了之前版本中已经出现的缓存基础架构。
  • 在Standard dialects中新增了XHTML DTDs。
此外,该版本针对自定义Thymeleaf扩展的用户,进行了一些改进,详细信息参阅:What's new in Thymeleaf 2.0

依赖性:

  • Java SE 5 或更高版本
  • ognl 3.0 或更高版本
  • javassist 3.14.0-GA 或更高版本
  • slf4j 1.6.1 或更高版本
项目官网http://www.thymeleaf.org/

下载地址http://www.thymeleaf.org/download.html

  • 大小: 11.2 KB
1
0
评论 共 7 条 请登录后发表评论
7 楼 javamonkey 2012-02-10 13:58
这个我开发beetl也可以,原则之一就是降低模板语言对原有文件低侵入性
对于6楼的例子,

<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>   

可以在beetl里这么解决
<!--:for(prod  in allProducts){ -->
    <tr ">
      <td >${prod.name}</td>
      <td >${prod.price,number=".##}</td>
</tr>
<!--:}-->

另外html页面通头部和尾部通常在公共的文件里,如果用别的模板语言,则会破坏html,如果是beetl,可以这么做
<!--:includeFT("./footer.html"){ -->
<div id="footter">
这是尾部内容,仍然保留原有内容,但在beetl运行的时候,会用./foooter.html替换
</div>
<!--:}-->

如果对beetl有兴趣,可以访问beetl博客
http://beetl.lofter.com/

6 楼 pure 2012-02-10 12:34
pure 写道
lshoo 写道
相比Velocity、FreeMarker有哪些优势?

官方好像有说明,最大的优点在于不破坏页面排版,是作为标签属性来使用,这个是最大的不同,其它的看说明吧。

<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>
5 楼 pure 2012-02-10 12:32
lshoo 写道
相比Velocity、FreeMarker有哪些优势?

官方好像有说明,最大的优点在于不破坏页面排版,是作为标签属性来使用,这个是最大的不同,其它的看说明吧。
4 楼 lshoo 2012-02-10 09:54
有springmvc3版本,估计能完美集成的。
3 楼 tedeum 2012-02-10 09:18
lshoo 写道
相比Velocity、FreeMarker有哪些优势?

同问,另外可以和spring mvc集成吗
2 楼 lshoo 2012-02-09 21:28
相比Velocity、FreeMarker有哪些优势?
1 楼 TSheep 2012-02-09 16:47
强烈向大家推荐这个,很不错

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 必学Java类库/常用Java类库大全(awesome-java)

    完整资源地址:http://www.21doc.net/java/awesomejava 对象映射 简化对象映射的框架。 Dozer - 使用注释,API或XML配置将...MapStruct - 代码生成器,它简化了不同bean类型之间的映射,基于配置方法的约定。 Mode...

  • Java 框架、库和软件的精选列表(Awesome Java)

    原创翻译,原始链接 本文为awesome系列中的awesome java 文章目录项目Bean映射构建字节码操作缓存CLI集群管理代码分析代码覆盖率代码生成器编译器计算机视觉配置约束满足问题求解器CSV数据结构数据库日期和时间依赖...

  • Java资源大全中文版(Awesome最新版)

    :新一代的开源 BPM 引擎,核心是基于 Java 的超快速、超稳定的 BPMN 2.0 流程引擎,强调流程服务的可嵌入性和可扩展性。  官网   下载 经典的工具与库 (Ancients) In existence since the beginning of time and ...

  • Java资源大全(组件、工具等)

    转载 : https://github.com/akullpp/awesome-java目录业务流程管理套件经典的工具与库 (Ancients)Bean映射 (Bean Mapping)构建工具 (Build)字节码操作 (Bytecode Manipulation)缓存 (Caching)群集管理 (Cluster ...

  • SpringBoot/Spring Cloud/Docker

    ​ 官方: Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。 约定优于配置(Convention over Configuration),又称...

  • Java资源大全中文版(转)

    Java资源大全中文版(Awesome最新版) Awesome系列的Java资源整理。awesome-java就是akullpp发起维护的Java资源列表,内容包括:构建工具、数据库、框架、模板、安全、代码分析、日志、第三方库、书籍、Java 站点...

  • 狂神Vue笔记最全最相同

    狂神说 Vue 笔记 bilibili视频地址 Vue 的核心库只关注视图...Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式JavaScript框架,发布于2014年2月。 与其它大型框架不同的是,Vue 被设计为可以自底向上

  • Spring Boot框架知识总结笔记(超详细,一次性到位)狂神说SpringBoot笔记

    本篇文章是我基于狂神说Spring Boot课程所做的笔记,内容比较多,包含配置文件解释、Thymeleaf、Shiro、JDBC、Mybatis、Swagger、任务、分布式 Dubbo+Zooker等等,如果能耐心看完,想必会有不少收获。

  • SpringBoot

    Spring是解决企业级应用开发的复杂性而创建的,基于POJO的轻量级和最小侵入性编程,IOC和AOP创建一个spring initalizr项目,选择初始化插件Web。 pom.xml文件 将项目打成jar包,点击maven的package后,就会在target...

  • Spring Boot

    微服务论文中文翻译 dubbo SpringBoot 2.7.8要求 工具 Version jdk Java 8 Spring Framework 5.3.25 Maven 3.5+ Gradle 6.8.x, 6.9.x, and 7.x Tomcat 9.0 4.0 Jetty 9.4 3.1 Jetty 10.0 4.0 Undertow 2.0 4.0 2....

  • Vue入门(学习笔记)

    为了让View更纯粹, 还可以使用Thyme leaf、Frree marker等模板引擎, 使模板里无法写入Java代码, 让前后端分工更加清晰。 缺点 前端开发重度依赖开发环境,开发效率低 前后端职责纠缠不清 对前端发挥的局限性:...

  • 狂神。Vue学习。

    Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目...HTML +

  • spring boot基础学习教程

    spring boot也在2018年3月发布了2.0的正式版本,但是对现在来说还是太新。 使用Maven构建项目 通过SPRING INITIALIZR工具产生基础项目 访问:http://start.spring.io/ 选择构建工具 Maven Project 、 ...

  • SpringBoot入门

    SpringBoot入门1、SpringBoot简介2、SpringBoot特点3、SpringBoot使用场景4、SpringBoot的使用4.1、下载安装STS4.2、创建SpringBoot应用4.3、...配置4.10、整合模板引擎4.10.1、整合Freemarker模板引擎4.10.2、整合Thy

  • 基于net的超市管理系统源代码(完整前后端+sqlserver+说明文档+LW).zip

    功能说明: 环境说明: 开发软件:VS 2017 (版本2017以上即可,不能低于2017) 数据库:SqlServer2008r2(数据库版本无限制,都可以导入) 开发模式:mvc。。。

  • LABVIEW程序实例-公式节点.zip

    labview程序代码参考学习使用,希望对你有所帮助。

  • 大米商城开源版damishop(适合外贸)

    大米外贸商城系统 简称damishop 完全开源版,只需做一种语言一键开启全球133中语言自动翻译功能,价格实现自动汇率转换,集成微信支付宝 paypal以及国外主流支付方式,自带文章博客系统。 软件架构 基于MVC+语言包模式,增加控制台,API导入产品方便对接其他系统(带json示例数据)。 使用要求 PHP7.4+ MYSQL5.6+ REDIS(可选) 安装方法 composer install 打开安装向导安装 http://您的域名/install 特色 1、缓存层增加时间与批量like删除 2、API产品导入方便对接其他系统 3、增加控制台命令行,命令行生成语言翻译包 4、后台一键开启自动翻译模式,支持全球133中语言,由于google代理翻译需要收费,这个功能需要付费。 5、可选购物车与ajax修改购物车产品 6、一键结算checkout 7、增加网站前台自定义路由 方便seo 更新日志 v3.9.7 集成鱼码支付接口,方便个人站长即使收款到账使用 v3.9.3 更新内容 1:增加ueditor与旧编辑器切换 2:增加可视化布局插

Global site tag (gtag.js) - Google Analytics