Spring MVC和Struts MVC之间的区别 [已关闭]

2022-08-31 22:27:37

Spring MVC和Struts MVC之间的主要区别是什么?


答案 1

Spring MVC和Struts之间的主要区别在于:Spring MVC是松散耦合的框架,而Struts是紧密耦合的。对于企业应用程序,您需要构建松散耦合的应用程序,因为它可以使您的应用程序更具可重用性,更健壮以及分布式。


答案 2

如果您想将Spring MVC与支柱进行比较,请考虑以下Spring MVC相对于支柱的好处。

  1. Spring在控制器、JavaBean模型和视图之间提供了一个非常干净的划分。
  2. Spring的MVC非常灵活。与Struts不同,Struts强制你的Action和Form对象进入具体的继承(从而消除了你在Java中对具体继承的单次尝试),Spring MVC完全基于接口。此外,Spring MVC框架的几乎每个部分都可以通过插入您自己的界面进行配置。当然,我们也提供便利类作为实现选项。
  3. 与WebWork一样,Spring提供了拦截器和控制器,因此可以轻松分解处理许多请求时常见的行为。
  4. Spring MVC是真正的视图不可知论者。如果你不想,你不会被强迫使用JSP;您可以使用 Velocity、XLST 或其他视图技术。如果你想使用自定义视图机制 - 例如,你自己的模板语言 - 你可以很容易地实现Spring View接口来集成它。
  5. 弹簧控制器像任何其他对象一样通过IoC进行配置。这使得它们易于测试,并与Spring管理的其他对象完美集成。
  6. Spring MVC Web层通常比Struts Web层更容易测试,因为避免了强制的具体继承和控制器对调度程序servlet的显式依赖。
  7. Web 层成为业务对象层之上的薄层。这鼓励了良好的做法。Struts和其他专用的Web框架让您在实现业务对象时独自一人;Spring 为您的应用的所有层提供集成框架

推荐