12

我正在编写一个 Spring MVC 应用程序并寻找一种在视图中进行布局的方法。我看到的唯一选项是 Apache Tiles,我以前使用过它并且知道维护其配置是多么痛苦。

有什么好的选择吗?我看了看SiteMeshSpring Surf似乎都处于休眠状态。

4

5 回答 5

10

大约一个月前,我面临同样的困境。我是一名使用 apache tile 的经验丰富的开发人员,我想尝试一些不同的东西。

我做了一些研究,发现 Spring MVC 与 freemarker 和 sitemesh 有一些集成。我决定试一试。

Tiles 似乎拥有最活跃的社区。

您也可以尝试纯速度实现。

总而言之,我的项目最终恢复为瓷砖。Tiles 是一个强大的模板框架,一旦你了解它的强大功能,我会发现很难找到一个好的替代品。此外,如果您已经精通 apache tile,我发现切换框架(如果有)的好处并不能证明选择 sitemesh/freemarker 所需的学习曲线是合理的

http://www.sitemesh.org/overview.html

http://freemarker.sourceforge.net/

于 2011-12-19T18:40:17.113 回答
2

Tiles 和 Sitemesh 的设计目的非常不同。

  • Tiles 用作应用程序的一部分,旨在使用 Tile。
  • Sitemash 被设计为一个或多个现有应用程序前面的过滤器。您想要更改应用程序输出的位置(例如(一个非常简单的任务)替换徽标或添加额外的菜单选项)。

另一方面,我不明白为什么有这么多的 xml。您必须为每个页面编写一个 xml 块来定义它需要的布局。(如果您仍然配置包含图块配置的文件列表,请查看“org.springframework.web.servlet.view.tiles2.TilesConfigurer”。)

如果您甚至想摆脱这些文件,那么也许您应该更多地考虑扩展磁贴而不是使用其他框架。

于 2011-12-20T10:20:38.690 回答
1

IMO SiteMesh 和 Tiles 都是相当不错的方法,尽管较新的 Tiles 版本增加了许多尚未开发的功能——它不仅仅是一个简单的模板机制。

如果您发现维护是一个问题,我会考虑使用 DSL 或轻型 GUI 将其封装在一个薄抽象层中,两者都可以产生很大的不同。

于 2011-12-19T18:42:54.723 回答
0

你可以使用phpj

它易于使用,附带示例。您可以将它用于查看模板或以任何您想要的方式生成您的 html 内容。

于 2013-07-23T15:38:03.740 回答
0

虽然我个人没有经验,但这里有另一种选择:https ://code.google.com/p/commentit/

于 2014-08-08T20:57:34.367 回答