在我的情况下,SpringBoot是否实现了MVC模式?

18 浏览
0 Comments

在我的情况下,SpringBoot是否实现了MVC模式?

我正在创建一个应用程序,其中前端使用Angular开发,后端使用SpringBoot开发。\n问题是后端有带有请求映射和模型(服务和存储库)的控制器,但没有视图,所以它真的实现了MVC模式吗?\n我在这篇文章中阅读到“Spring MVC or Spring Boot”,它指出Spring MVC本身就实现了MVC模式,而Spring Boot是Spring MVC的一部分,所以基本上Spring Boot就是MVC。这在你的项目中有视图和HTML页面时是正确的,但在我的情况下,我无法谈论视图,因为我是通过restful API发送和接收JSON数据。

0
0 Comments

在这个问题中,出现的原因是对于SpringBoot是否实现了MVC模式的疑问。问题的解决方法是解释MVC模式的概念以及如何在前后端应用中应用该模式。

MVC模式是一种设计模式,用于将应用程序的不同组件分离开来,以便更好地管理和维护代码。MVC模式由三个主要组件组成:模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据和业务逻辑,视图负责展示数据给用户,控制器负责处理用户的请求并将数据传递给模型或视图。

根据之前的讨论,可以得出结论:SpringBoot实现了MVC模式。在SpringBoot中,模型由控制器处理,视图由前端应用展示。同时,前端应用也可以被视为视图的一部分。因此,在这种情况下,前端应用可以被认为是视图。

有人提出了一个问题,即如何在两个端之间共享MVC模式。MVC模式实际上是一种设计模式,可以被应用在不同的项目中。前端应用可以使用MVVM(Model-View-ViewModel)或其他基于组件的架构,而后端应用可以使用MVC模式。尽管两个端使用了不同的架构,但它们仍然可以都被认为是应用了MVC模式。

除此之外,还有人提出了一个问题,即是否可以在前后端分别使用控制器。根据之前的解释,前后端应用都可以拥有自己的控制器、模型和视图。在前端中,控制器负责处理用户的交互,而在后端中,控制器负责处理请求并将数据传递给模型或视图。

可以得出结论:SpringBoot在这个案例中实现了MVC模式。尽管前后端应用使用了不同的架构和参数,但它们仍然可以都被认为是应用了MVC模式。在这种情况下,前端应用可以被认为是视图的一部分,通过JSON数据与后端应用进行通信。

0
0 Comments

在上述内容中,问题的出现原因是用户想确定Spring Boot是否实现了MVC模式。解决方法是通过对MVC模式的定义进行分析和讨论。下面是整理后的文章:

根据维基百科上的定义,视图(view)是以特定格式呈现模型(model)的方式。我认为这是一个很好的定义。对于用于REST API后端的情况,特定格式通常是JSON或XML。

同样在维基百科上的同一页上,有这样一段描述:

“一些Web MVC框架采用了“薄客户端”(thin client)的方法,将几乎整个模型、视图和控制器逻辑都放在服务器端。在这种方法中,客户端将超链接请求或表单提交发送到控制器,然后从视图接收到完整和更新的网页(或其他文档);模型完全存在于服务器端。”

所以在我的情况中,当我在浏览器中输入localhost:XXXX/myroute/{myparam}时,显示的JSON就是视图吗?

我会说是的。这是对MVC模式中模型的定义的问题。根据我找到的MVC的定义,后端返回的文档也可以算作模型。它不一定非得是HTML网页。

所以我的前端根据提供的路由URL从视图中获取数据,非常感谢,我将把这个回答标记为解决方案。

0