Sitemesh或瓷砖[关闭]
Posted
技术标签:
【中文标题】Sitemesh或瓷砖[关闭]【英文标题】:Sitemesh or Tiles [closed] 【发布时间】:2011-05-25 06:57:08 【问题描述】:致力于网络应用程序的设计,由于它将是一个大型应用程序,因此无法回复 jsp 包含功能,因此必须使用其他解决方案,为此我们提出了 Tiles 和 Sitemesh。
我们对他们俩都是新手,因此非常感谢社区的任何见解。有关其他信息,我们将使用 Struts2.x 作为我们的邮件 MVC 框架,而 Spring 用于另一层(业务)
哪个选项更好,因为应用程序需要处理大量内容和频繁的 UI 更改
【问题讨论】:
【参考方案1】:根据我的个人经验,我会推荐 Tiles2:与 Struts2 的简单和干净的集成,允许您在各种模板中重用单个组件,模板组合可以任意复杂(支持嵌套、模式继承、组件引用等等)等等。作为一个负面的观点,我会提到 XML 配置,对于大型项目来说,这可能意味着千米 XML 文件。无论如何,这可以很容易地避免分割配置文件(即一个用于通用模板的文件,以及一个用于每个模块的视图的单独文件),但是,你最终还是有很多 XML 配置文件......
使用 Tiles2 的另一点是,它是一个活跃的项目(最后一个版本发布于 2010 年 6 月),而 Sitemesh 项目似乎有点被遗弃(最后一个发布于 2009 年 3 月,如 here 所示)。
无论如何,要检查不同的观点(复合视图与装饰器模式),您可以查看 here 和 there,看看哪种方法更适合您的要求。
【讨论】:
+1 Thomas 我看到 Sitemesh 没有任何最新版本 SiteMesh 3.0 正在开发中(请参阅sitemesh.org)。 Tiles 3.0 也在开发中 (tiles.apache.org/index.html)。自 2010 年以来都没有更新。 +1 Tiles 2.2 易于与 struts2 集成,通配符支持可以大大减小 xml 文件的大小。【参考方案2】:Tiles-3 已发布。
除了通配符之外,还有一个 OptionsRenderer 可以进一步减少 xml。 见http://tech.finn.no/the-ultimate-view-tiles-3/
【讨论】:
您必须披露与外部链接的隶属关系。以上是关于Sitemesh或瓷砖[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在sitemesh装饰器中获取模型属性或spring的bean?
Servlet 页面装饰:人们使用 Tiles、Sitemesh 还是其他东西?
Sitemesh,无法构建工厂:com.opensymphony.module.sitemesh.factory.DefaultFactory: