【问题标题】:Is it useful to use mediator pattern with MVC?在 MVC 中使用中介模式有用吗?
【发布时间】:2015-01-23 08:14:47
【问题描述】:

问题是关于 MVC 设计模式的意识形态。根据定义,视图直接与控制器通信。例如,在JSFASP.NET web-forms 中,我们可以将控制器的属性绑定到网页的特定区域。但在这种情况下,我们通过直接写一个表达式来做到这一点

<h:outputText value="#{partnerController.lastAccessDate}"/>

在视图和控制器之间创建一个中介有用吗?例如,我需要以特定方式向多个控制器“发送消息”。

【问题讨论】:

  • 在我们的应用程序中,我们遵循仅从 JSF 视图调用 view-beans 的方法,以便与系统的其余部分有明确的界限——这意味着 JSF 文件引用具有 JSF 范围和JSF 特定技术 - 反过来又指的是 JSF 独立技术本身。

标签: java design-patterns model-view-controller


【解决方案1】:

在传统的 Web 应用程序中,JSP 页面(或 PHP 或其他一些 HTML 生成器)生成一个由用户填写并发送回服务器的表单,这并没有多大意义。发布的表单直接发送到处理数据的控制器。

在胖客户端环境中,这很重要。胖客户端可以是 SWING 之类的东西,也可以是 Angular 之类的 JavaScript 框架。这里的控制器实际上是一个中介。它所做的通常称为数据绑定。它确保输入到 GUI 中的数据存储在业务对象中,最终通过线路发送或持久化。

【讨论】:

  • 但是正如我所说,我需要将数据发送到几个控制器并在这几个控制器中调用几个方法。为什么没有意义?
  • 如果您可以在第一个控制器中使用顺序代码调用此控制器,则不同之处在于将此控制器顺序连接到中介,然后让它分发数据。这就是将一段静态代码替换为另一段更复杂、更难维护的代码。
猜你喜欢
  • 1970-01-01
  • 2023-02-09
  • 1970-01-01
  • 2011-11-13
  • 1970-01-01
  • 1970-01-01
  • 2014-09-17
  • 2011-02-14
  • 1970-01-01
相关资源
最近更新 更多