【发布时间】:2010-10-31 19:53:54
【问题描述】:
Seam 与 Spring 相比有哪些优点/缺点?为什么我要使用 Seam 来代替 Spring?
有什么可以在 Seam 中完成而在 Spring 中无法完成的事情吗? Spring 中的任何事情都不能在 Seam 中完成?
有状态/无状态架构呢?我是 Spring 用户,所以我自然有偏见。
【问题讨论】:
Seam 与 Spring 相比有哪些优点/缺点?为什么我要使用 Seam 来代替 Spring?
有什么可以在 Seam 中完成而在 Spring 中无法完成的事情吗? Spring 中的任何事情都不能在 Seam 中完成?
有状态/无状态架构呢?我是 Spring 用户,所以我自然有偏见。
【问题讨论】:
为什么是春天?
为什么要缝合?
来自框架死亡竞赛:Spring 与 Seam。托马斯 Wiradikusuma(春季)。约书亚杰克逊(接缝)。 Java 用户组印度尼西亚。贾木 07.03。 2007年3月17日简报here
【讨论】:
虽然seam确实比spring有很多优势,但是有一个神奇的词真的很值得关注,那就是PERFORMANCE!!!如果您不担心性能问题,我会选择接缝。另一方面,如果您希望您的应用程序尽可能快并且您的硬件有限,我会使用 spring。我并不是说你不能用 seam 开发快速的应用程序,但为了做到这一点,你真的需要知道你在做什么。我已经使用了它们(我不是其中任何一个的专家),我发现虽然 spring 需要更多的努力来构建你想要的东西,但最终结果更加灵活并且表现更好。我认为没有什么可以在一个框架中完成而在另一个框架中无法完成,请记住,我不是其中任何一个框架的专家。
【讨论】:
Seam 会给你一个漂亮的,啊,无缝的,组成seam stack 的组件之间的集成。一切都很好,只要你保持在那个堆栈内,在接缝模型和 foing 东西内。但是,一旦您开始做一些不寻常的事情,这一切就开始显得不那么令人信服了。
如果不是太笼统,Seam 在这方面非常“微软化”。这不是一件坏事,这只是一个风格问题。 Spring 更加开放,需要付出更多努力才能开始,但它最终更加灵活,更加开放。
【讨论】:
您可以同时使用 Spring 和 Seam - Spring 用于后端组件,Seam 用于增强 Web 层(JSF/GWT/Wicket)和其他东西。 Seam 提供了很多 Spring 功能(即 IoC 容器、事务管理)——在你的项目中你可以决定——使用巫婆实现。 有关将 Seam 与 Spring 集成的更多详细信息 - "Seam in Action - free bonus chapter"
【讨论】:
让我们比较一下两者。
什么是常见的?
两者都是开源的,遵循 MVC 架构并具有基于 servlet 的前端控制器。
Spring MVC 的优点
Seam 的优势
结论
由于Seam 是基于JSF 构建的,它有大量的UI 组件库可供选择。它更好地重用了 Java EE 堆栈。它预先集成了许多有趣的模块。
Spring MVC 建立在 Struts 和 Spring 之上,因此它对 Spring 框架堆栈的重用要比其他框架好得多。但是视图是使用JSP构建的,所以我们不得不依赖JSP标签库厂商来构建丰富的组件。
Seam 框架将是更好的选择,因为 Spring 框架无论如何都具有足够的可扩展性以供 Seam 使用。
【讨论】:
Spring MVC is built on top of Struts and Spring,Spring 从未建立在 Struts 之上。