Thymeleaf与Spring MVC 3结合使用

3

我需要决定在Spring MVC 3中使用哪种视图层技术,我看到了Thymeleaf。有没有人用过Thymeleaf或者有相关经验?如果选择Thymeleaf来和Spring 3一起使用,会得到什么和失去什么?

我的前端设计师们想要感受到舒适,因此我在考虑能否使用Thymeleaf和Spring 3,并且仍然拥有JSPs + Spring MVC 3所具有的所有功能。

2个回答

4
Thymeleaf和Spring非常搭配。Thymeleaf的Spring集成已按照预期完成,并且已经很好地记录了如何入手。
我在几个项目中使用这种组合已经有一年了,至今仍然对当时做出的选择感到满意。
Thymeleaf支持所谓的“自然模板”,这意味着模板可以在没有模板引擎的情况下查看,它们是具有附加标记属性的HTML文件,浏览器会忽略这些属性。
这意味着Web设计师可以设计页面,将其交给开发人员,如果需要更改布局,则可以重新获取该页面。
虽然一开始我非常喜欢这个想法,但很快就意识到,作为开发人员,我们倾向于创建可重用的组件。这通常会导致模板要么没有太多内容要显示,要么有大量元素。
想象一下在表格单元组件中进行某个切换语句,它将呈现复选框、文本字段、选择框等。包含此单元片段的表格模板不能在没有引擎的情况下解析它。或者想象一下包含所有样式和JS声明的头片段。在纯文件模式下,CSS不可用。
但是您可以添加其他HTML标记并在处理期间将它们删除。因此,自然模板仍然可行。只是要写很多内容:)
有一些支持扩展可解决这些问题(例如使用JS来拉入片段),但我没有使用它们,因为我的应用程序通常在30秒内部署,并且我甚至能够动态更改模板而无需重新部署。
在Thymeleaf周围还有相当不错的生态系统。我非常喜欢扩展Thymeleaf的能力! (我自己编写了两个较小的扩展)。
我更喜欢布局方言而不是包含方法。我想说这只是口味问题。
从我个人的角度来看,选择Thymeleaf而不是普通的JSP显然是有利的。请查看网页并自行决定;)

1

我使用Spring 3和Thymeleaf已经有一年了,认为这是一个不错的选择。我之前使用过Grails和Play,正在寻找一个好的替代方案,于是创建了FuWeSta。你可以查看基本示例应用程序。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接