【问题标题】:Servlets vs MVC frameworks [closed]Servlet 与 MVC 框架 [关闭]
【发布时间】:2011-01-29 11:18:23
【问题描述】:

我经常遇到这样的问题:为什么我们有很多 Web 框架解决了相同或相似的缺点。

在深入研究的时候,我也思考过为什么在其他 Web 框架(如 Struts、Spring MVC 等)出现之后没有使用 JSP / Servlets?

是因为,最新的网络框架

  1. 大部分事情都是自己做的?
  2. 提供了 Servlet/JSP 不具备的广泛功能?
  3. 还是说 Servlet/JSP 无法提供最新框架的功能?

非常感谢任何以回复或资源形式提供的帮助。

【问题讨论】:

    标签: jsp web-applications servlets spring-mvc struts


    【解决方案1】:

    我将分享我对此的一些想法。

    1. 如上所述,这些框架是在 Servlet/JSP 之上开发的。
    2. 它们旨在避免重复代码(DRY)
    3. 框架基于设计模式 - 针对常见问题的通用可重用解决方案。
    4. 他们帮助在整个团队中轻松地沟通事情,让他们高效并专注于他们试图解决的企业级问题,而不是这些常见任务。
    5. 它们通过为众所周知的问题提供通用解决方案来帮助加快开发速度。 (例如表单验证、REST、测试、依赖注入等)

    当您正在开发大型企业应用程序并且有多个开发人员在开发它时,您肯定需要在每个开发人员编写的项目/代码/结构之间保持一定的一致性。外部强制执行并不可靠,但是当这些执行被内置时,它有助于使项目易于维护、扩展并且易于新人在短时间内使用它。

    我相信这条规则不仅适用于 servlet-jsp,也适用于 JavaScript。在构建企业级 UI 时,仅原生 JavaScript 甚至低级 JavaScript API/库是不够的。要么采用最佳可用框架,要么抽象出共同的本质,使其成为框架(而不是库)。

    【讨论】:

      【解决方案2】:

      Spring MVC 仍然与 JSP 一起工作,并且在其核心中,它只提供一个简单的调度程序 servlet,它使用 Spring MVC 框架提供的机制(您在其中注册控制器等)。我会说这是为了方便,让事情更容易编写和维护。此外,您可以更轻松地对当前的开发做出反应(例如 RESTful 服务......您必须在 servlet 中手动编写所有代码)。最后,这就是框架的用途。

      【讨论】:

        猜你喜欢
        • 2023-04-03
        • 1970-01-01
        • 2012-06-02
        • 2012-03-17
        • 2011-07-12
        • 1970-01-01
        • 2011-07-23
        • 2011-04-04
        相关资源
        最近更新 更多