我正在尝试在一个小型学校项目中实现 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/