2010-05-21 129 views
3

场景:一个相当成熟的项目使用Struts2和Spring以及Hibernate。我说成熟是因为它已经进行了一段时间,并且已经有很多struts操作。从Struts2迁移到Spring MVC

假设我们想从项目中移除Struts2,而完全依赖Spring MVC而不重写整个项目。

这是应该考虑的东西吗? 有没有任何移民指南? 有没有人曾经这样做过,并想警告我反对它?

+0

您可以一次移植项目的一部分吗?你的应用程序耦合程度如何? – 2010-05-21 15:41:47

+0

@Dean J我大概可以做到这一点,但是如果我们首先考虑的更大问题仍然笼罩在我的头上。 – 2010-05-21 16:15:29

+0

我没有使用Spring MVC的经验,但我认为它与Struts2的相似之处(以及相对的优势和缺点)可以证明这种迁移工作的合理性。 – leonbloy 2010-05-21 16:43:58

回答

9

如果没有损坏,请不要修复它。与迁移相比,您可能会做出更好的事情,从而不会为产品增加任何价值(并且肯定会引入一些错误)。如果我是企业,我永远不会购买这样的迁移(几乎没有任何好处)。

1

你可以慢慢做。 Struts是一个MVC框架。应用程序的其余部分(业务层和数据层)是可以由操作类调用的类。 Struts是一个基于插件的架构,您可以很容易地在struts配置文件中定义一个插件。

看看this link。这可能有帮助。

1

我不得不问:你看到Spring MVC没有被Struts 2实现的优点吗?
如果至少没有少数“吸热”功能,或者节省的时间量足以克服首次迁移所需的时间,那么最好坚持使用现有的功能。

+1

这确实是一个假设性问题。我认为你是对的,我们可以用Struts2来做所有事情,而且我们实际上已经在使用Spring来进行依赖注入了。我只是想知道是否有必要使用两者或者更好的方式去除struts并使用Spring。 – 2010-05-22 05:39:31

+0

我明白你的好奇心,我在Struts-2上有一段时间的项目,如果一个不同的框架会使得更容易/更优雅/更有趣,我也会奇怪。 :-)也许值得创建一个分支机构,花几个小时移动一个小子集来看看结果如何。最糟糕的情况是你会对Spring MVC更熟悉一些。 – 2010-05-22 15:26:06

1

随着Struts2安全漏洞的暴露和频繁报告,这个任务变得更加重要。