【问题标题】:what is the difference between MVC1 and MVC2MVC1 和 MVC2 有什么区别
【发布时间】:2011-06-03 03:16:05
【问题描述】:

我在 jsp-servlet Web 应用程序中使用 MVC 设计模式,想知道 MVC1 和 MVC2 之间的确切区别是什么,有人可以帮忙吗?

EDIT 新我听说在 servlet 编程中使用 MVC 有 2 个版本,我听说在 MVC1 中控制器和视图之间存在某种耦合,但在 MVC2 中它们超过了它,如果有人知道这是对还是错,我将非常感谢。

【问题讨论】:

    标签: java model-view-controller jsp servlets


    【解决方案1】:

    MVC-1 架构

    1) 在 MVC-1 架构中,单个 Web 组件(Servlet/JSP)用作控制器和视图,但对于其他层,则采用单独的 Web 组件.... 2) 由于单组件作为Controller和View,逻辑混乱..

    MVC-2 架构

    1) 在 MVC-2 架构中,单独的组件应该用于单独的层...... 2)逻辑没有混合,逻辑之间有清晰的分离......

    【讨论】:

      【解决方案2】:

      您可能会结合 asp.net MVC 阅读此版本,因为该框架有不同的版本。没有 mvc 模式的 2.0 版本,只有 asp.net MVC 框架的 2.0 版本。

      在 jsp servlet 的上下文中,请参阅:Model 1Model 2。简而言之:模型 1 没有控制器来分派请求,模型 2 有。

      【讨论】:

      • 我需要知道 serevlet-jsp 编程而不是 .NET 框架中的区别。
      • “在模型 1 中,向 JSP 或 servlet 发出请求,然后该 JSP 或 servlet 处理该请求的所有职责”来自 [en.wikipedia.org/wiki/Model_1].这是jsp的MVC1 servlet中的一点可以处理请求,但在MVC2中只有servlet是控制器。非常感谢您的回复。
      【解决方案3】:

      在 MVC 1 中,控制器和模型都是 JSP。而在 MVC2 中,控制器是 servlet,模型是 java 类。 在 MVC1 中,页面和模型之间存在紧密耦合,因为数据访问通常使用自定义标记或通过 java bean 调用完成。
      在 MVC2 架构中,只有一个控制器接收应用程序的所有请求,并负责对每个请求采取适当的行动。

      【讨论】:

      • 你能澄清你的第一句话是什么意思吗? '在 MVC 1 中,控制器和模型都是 JSP。而在 MVC2 中,控制器是 servlet,模型是 java 类。'
      • MVC1 架构是以页面为中心的设计所有业务和处理逻辑意味着任何 JSP 页面都可以存在于 JSP 中,也可以直接从 JSP 页面调用
      【解决方案4】:

      MVC1 是第一代方法,它使用 JSP 页面和 JavaBeans 组件架构来实现 Web 的 MVC 架构。 HTTP 请求被发送到一个 JSP 页面,该页面实现控制器逻辑并调用模型以获取数据以更新视图。这种方法在 JSP 页面中结合了控制器和视图功能,因此打破了 MVC 范式。 MVC1 适用于简单的开发和原型设计。但是,不建议进行认真的开发。

      MVC2 是 Sun 发明的一个术语,用于描述基于 Web 的应用程序的 MVC 架构,其中 HTTP 请求从客户端传递到控制器 servlet,后者更新模型,然后调用适当的视图渲染器,例如 JSP 技术,然后从更新的模型中呈现视图。 MVC2 方法的标志是将 Controller 代码与 内容。 (表示框架(如 Struts)的实现遵循 MVC2 方法)。

      这就是我在这里找到的:http://www.theserverside.com/discussions/thread.tss?thread_id=20685

      【讨论】:

      • 此内容是从维基百科页面复制而来的。这也清楚地表明 MVC1 在 J2EE 上下文中是一个不存在的术语。只有模型 1 和模型 2。模型 2 与实际的 MVC 架构非常相似,有时也称为“MVC 模型 2”,通常简称为“MVC 2”。 (模型 1 不是 MVC,因为它没有单独的控制器)。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-02
      • 2011-12-12
      • 2010-09-16
      • 2012-03-14
      • 2012-02-06
      相关资源
      最近更新 更多