|
|
1
2
不,单词controller通常用于表示一个类,该类负责控制某些下游(接近于ui)代码组件(如ui屏幕本身)的行为或访问模式,或某些下游组件与包含(或模型)该下游所用数据的上游组件之间的交互。组件。 服务组件是一个组件,它提供一些功能或实现应用程序业务逻辑(或者在某些情况下,根据基础结构要求甚至应用程序设计要求)所需的流程,这些逻辑可以封装在单个类中,以便与其他应用程序功能部分隔离。 |
|
2
3
这取决于您如何定义服务层,但一般来说,答案是否定的,它们并不相同。我使用一个定制的MVC框架,服务类与控制器类是分开的。 控制器类负责做出应用程序逻辑决策。它们决定应用程序的操作应该是什么,比如加载什么对象,运行什么逻辑。业务逻辑(如数据更改)不应由控制器类处理。他们是为了制造 决定 . 在您的情况下,CustomerController可能会决定要加载哪个客户对象以及要对其采取什么操作。 服务类通常负责 协调业务类之间的交互 . 这通常是以某种数据操作或事务的形式出现的。在您的示例中,CustomerService类可能为您的客户对象提供方法,以将购买保存到数据库或激活中央存储库上的RPC调用。 |
|
|
3
2
不,看到了 model-view-controller . 控制器应该调用服务层来完成它的工作、填充模型等,但是它们不应该是相同的。
控制器不应包含业务逻辑。 |