2011-12-19 72 views
12

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

有没有什么好的选择?我看着SiteMeshSpring Surf都似乎休眠。

回答

10

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

我做了一些研究,发现Spring MVC与freemarker和sitemesh有一些整合。我决定给两个镜头。

瓷砖似乎有最活跃的社区。

你也可以尝试一个纯粹的速度实现。总结起来,我的项目最终恢复为瓷砖。瓷砖是一个强大的模板框架,一旦你了解它的力量,我会发现很难找到一个好的替代品。另外,如果你已经熟练阿帕奇砖,我发现开关框架(如果有的话),并不能证明需要拿起SiteMesh的学习曲线的典型应用该类超支/ freemarker的

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

http://freemarker.sourceforge.net/

+0

我试过Scalate,但没有用。你是对的,当Tiles可以满足我所有的需求时,不值得花时间学习另一个框架。 – 2011-12-20 02:00:07

1

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

如果您发现维护问题,我会考虑使用DSL或轻型图形用户界面将其包装在一个薄层抽象层中,这两者都可以产生很大的差异。

2

瓷砖和Sitemesh在设计上有很大不同。

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

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

如果你想摆脱这些文件,那么,也许,你应该考虑多使用其他框架延伸砖。

0

你可以使用phpj

它易于使用,自带的例子,你可以用它来查看模板或生成HTML内容,任何你想要的方式。