java - 关于model-view-controller的一些疑惑

标签 java view model controller

我正在尝试在一个小型学校项目中实现 MVC,但我有一些小疑问,希望有人能帮助我:

1.- 如果我有 5 个 View ,我想我需要 5 个模型,每个 View 一个,但我需要 5 个 Controller 吗?还是只需要一个 Controller 来与所有 View 交互。

2.-我需要从数据库添加数据,我应该在哪里进行选择查询,是在模型中还是在 Controller 中?

最佳答案

1.- if I'm having 5 views, I think I need 5 models, one for each view, but do I need 5 controllers?, or just one controller that will interact with all of them.

不,这就是 MVC 的美妙之处。一个模型可以被许多不同的 View 使用。应该编写模型,使其不了解 View ,也不需要这些知识。您可能需要 5 个 Controller ,但这不是给定的。您有可能(尽管不太可能)只需要一个控件。

另请注意,如果您的程序需要多个不同的数据源和“业务规则”,您实际上可能需要多个模型。

2.-I need to add data from a DB, where do I make the select query, in the model, or in the controller?

这听起来像是一个控制问题。

根据评论,注意 MVC 不是作为对有限资源的解决方案而创建的,而是作为一种允许创建模块化程序代码以允许减少耦合和增加内聚性的方法。这将使升级、增强和调试代码变得更加容易。

关于java - 关于model-view-controller的一些疑惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17514690/

相关文章:

java - 获取代表笛卡尔 x,y 的值列表

java - Java GUI 中单选按钮的对齐方式

swift - tableView 在 UIView 内无法正确滚动

swift - 在 SWIFT 的 View 中设置 alpha 一组元素

model-view-controller - 胖模型、瘦 Controller 和 MVC 设计模式

Java - 如何在不排序的情况下检查扑克牌中的顺子?

Java使用extends访问变量

android - 如何将 View 添加到 View 组?

Django 错误迁移嵌套模型而不迁移基础模型

javascript - Backbone 中的模型更改渲染