1

Java中常用的model-view-controller-pattern是什么?
我听说,通常只使用它的 2 个组件,因此视图和控制器只是 1 个组件,与模型通信。

4

4 回答 4

4

我认为这个问题可能太宽泛而无法回答,但是,为了让您清楚:

  • MVC 模式用于许多流行的 Java Web 框架,MVC 模型 2 也很流行。
  • 如果您正在考虑移动应用程序,那么 Android 也使用 MVC 模式以及为视图和控制器定义明确的角色。
  • 如果您正在考虑桌面应用程序,那么有一些 Swing 框架也使用 MVC 模式。

所以简而言之,你的问题的答案是:是的,MVC 模式在 java 中被广泛使用,通常视图和控制器有自己的角色,也许在摇摆中这个概念是混合的,但在其他类型的应用程序中不是这样很多。

干杯!

于 2012-05-07T01:21:10.203 回答
2

是的,它在 Java 中很常见。

在 JavaEE 中,它可以像由 javax.servlet.http.HttpServlet(servlet、控制器)构造的 JavaBean(模型)一样简单,并作为请求属性转发到 JSP 页面(视图),JSP 页面(视图)以浏览器友好的格式呈现它,例如作为 HTML。还有各种各样令人眼花缭乱的框架——一些是标准的,一些是开源的,还有一些是专有的——它们都在寻找干净的 MVC 开发的圣杯,通常使用语法糖来降低复杂性或提高开发人员的生产力。一些重要的例子是Apache StrutsJavaServerFaces (JSF)。Wikipedia 有一个不错的Java MVC 框架概要。

在 JavaSE 中,使用 MVC 设计的 GUI 应用程序可以访问丰富的技术,例如侦听器以将模型更改从控制器传递到视图,以及将用户交互从视图组件传递到控制器。在 Swing 中,视图可以像 JTextField 一样简单,也可以像 JFrame 一样复杂,其中包含一组重要的组件/小部件。Oracle 在此处提供了有关该模式的概述文档

最后,它可能只是我,但我还没有看到组合视图和控制器的示例,我没有抱怨并希望进行重构。

于 2012-05-07T01:38:34.417 回答
0

MVC 是最流行的设计模式之一,不仅适用于 Java,而且适用于所有其他面向对象的编程语言。

控制器包含 Web 层表示逻辑,例如处理请求并将响应分派回视图

视图负责将请求值传递给控制器​​并呈现返回的响应

模型与视图和控制器密切相关。

Spring MVC 的一个简单示例...

  1. Dispatcher servlet 充当前端控制器,通过它根据 url 将所有请求引导到相关控制器
  2. 控制器从视图(JSP)获取请求值并处理请求值,相应地填充模型
  3. 填充模型

    通过 ORM 框架 (Hibernate) 传递以将数据持久保存在数据库中或填充模型添加回会话或请求范围变量

  4. 用于使用 JSTL 或 EL 将值呈现回视图 (JSP)

这是一个非常简单的场景,典型的 Web 应用程序将使用 MVC

于 2012-05-07T01:34:06.657 回答
0

MVC 代表模型视图和控制器。它是一种将业务逻辑、表示逻辑和数据分离的设计模式。Controller 充当 View 和 Model 之间的接口。控制器拦截所有传入的请求。模型表示应用程序(数据)的状态。它也可以有业务逻辑。View 代表演示文稿,即 UI(用户界面)。

于 2015-09-28T05:13:26.683 回答