阅读更多
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

  • onnxruntime-1.16.0-cp311-cp311-win_amd64.whl

    onnxruntime-1.16.0-cp311-cp311-win_amd64.whl

  • 基于springboot的流浪猫狗救助系统源码数据库文档.zip

    基于springboot的流浪猫狗救助系统源码数据库文档.zip

  • springboot美容院管理系统(代码+数据库+LW)

    摘  要 如今的信息时代,对信息的共享性,信息的流通性有着较高要求,因此传统管理方式就不适合。为了让美容院信息的管理模式进行升级,也为了更好的维护美容院信息,美容院管理系统的开发运用就显得很有必要。并且通过开发美容院管理系统,不仅可以让所学的SpringBoot框架得到实际运用,也可以掌握MySQL的使用方法,对自身编程能力也有一个检验和提升的过程。尤其是通过实践,可以对系统的开发流程加深印象,无论是前期的分析与设计,还是后期的编码测试等环节,都可以有一个深刻的了解。 美容院管理系统根据调研,确定其实现的功能主要包括美容用品管理,美容项目管理,美容部位管理,销量信息管理,订单管理,美容项目预约信息管理等功能。 借助于美容院管理系统这样的工具,让信息系统化,流程化,规范化是最终的发展结果,让其遵循实际操作流程的情况下,对美容院信息实施规范化处理,让美容院信息通过电子的方式进行保存,无论是管理人员检索美容院信息,维护美容院信息都可以便利化操作,真正缩短信息处理时间,节省人力和信息管理的成本。 关键字:美容院管理系统,SpringBoot框架,MySQL

  • numpy-1.21.1-cp39-cp39-linux_armv7l.whl

    numpy-1.21.1-cp39-cp39-linux_armv7l.whl

  • 基于JavaWeb+springboot的宠物救助及领养平台源码数据库文档.zip

    基于JavaWeb+springboot的宠物救助及领养平台源码数据库文档.zip

Global site tag (gtag.js) - Google Analytics