当我们谈论 MVC 框架时,Struts (原始而非 Struts2)是第一个想到的框架,不仅因为它一直是这个领域的先驱,而且它是迄今为止最好的框架之一。随着 SpringMVC 的出现,Struts 框架可能存在的缺点被 Spring MVC 所重视。今天,千锋重庆Java培训班的小编就给大家分析看看 Spring MVC 与Struts 区别在哪:
Spring在控制器、JavaBean 模型和视图之间提供了非常清晰的划分。
Spring 的 MVC非常灵活。与 Struts 不同,Struts 强制您的 Action 和 Form 对象进行具体继承(从而消除了您在 Java 中具体继承的单一机会),Spring MVC 完全基于接口。此外,几乎 Spring MVC 框架的每个部分都可以通过插入您自己的接口进行配置。当然,我们也提供便利类作为实现选项。
Spring 和 WebWork 一样,提供了拦截器和控制器,可以很容易地分解出处理许多请求时常见的行为。
Spring MVC 是真正的视图不可知的。如果您不想,您不会被迫使用 JSP;您可以使用 Velocity、XLST 或其他视图技术。如果您想使用自定义视图机制——例如,您自己的模板语言——您可以轻松实现 Spring View 接口来集成它。
Spring 控制器像任何其他对象一样通过 IoC进行配置。这使它们易于测试,并与 Spring 管理的其他对象完美集成。
Spring MVC web 层通常比 Struts web 层更容易测试,因为它避免了强制的具体继承和控制器对调度程序 servlet 的显式依赖。
Web 层成为业务对象层之上的一个薄层。这鼓励了良好的实践。Struts 和其他专用的 Web 框架让您自己实现业务对象;Spring 为应用程序的所有层提供了一个集成框架。
在 Struts 中,验证通常在 ActionForm 的 validate 方法中实现,有时使用 Jakarta common-validator 包进行声明性验证定义。在 SpringMVC 中,验证器是不依赖于 Servlet API 的第一类业务对象,即使在使用 commons-validator 时也是如此(沙箱中有代码支持这一点)。这允许在将域对象持久化到数据库之前,例如在您的业务逻辑中重用这些验证器。
* Struts 2 是Struts(原版)的修订版,解决了这些缺点并提供了一组很好的竞争特性。
以上就是关于“Strut与SpringMVC区别”的介绍,如果大家想了解更多相关知识,可以关注一下千锋重庆Java培训班的课程,该课程内容全面细致,由浅到深,通俗易懂,适合小白学习,希望对大家能够有所帮助。如果你想学习Java开发,可以来千锋重庆Java培训班参加两周的试听!
相关文章
06.08抢座
了解千锋动态
关注千锋教育服务号
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱