您的位置:首页 > 健康 > 养生 > 哔哩哔哩网页版登录入口_网站公司怎么找客户_seo发展前景怎么样啊_网站seo服务

哔哩哔哩网页版登录入口_网站公司怎么找客户_seo发展前景怎么样啊_网站seo服务

2024/10/14 8:14:21 来源:https://blog.csdn.net/qq_45705626/article/details/142866265  浏览:    关键词:哔哩哔哩网页版登录入口_网站公司怎么找客户_seo发展前景怎么样啊_网站seo服务
哔哩哔哩网页版登录入口_网站公司怎么找客户_seo发展前景怎么样啊_网站seo服务

文章目录

      • 控制器
        • MVC控制器
        • REST 控制器
      • @controller
      • @RestController
      • 总结

控制器

MVC控制器

在了解这两种注解之前我们需要先知道控制器的概念,我们项目中常见的就是MVC控制器,MVC 是一种软件架构模式,它将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。这种分离有助于管理复杂的应用程序,并提高代码的可维护性和重用性。

  • 模型(Model):负责处理应用程序的数据逻辑。通常包含业务逻辑、数据访问层等。
  • 视图(View):负责显示用户界面。它是模型的可视化表示,可以是一个网页或其他形式的UI。
  • 控制器(Controller):作为模型与视图之间的中介,处理用户的输入,执行相应的业务逻辑,并更新模型或视图。
    在这里插入图片描述
    在Spring MVC框架中,@Controller 注解用来标记一个类为控制器,它可以处理HTTP请求并返回响应。这些控制器通常用于生成HTML页面,适合于传统的Web应用,在现在的前后端分离项目中已经不太适用。
REST 控制器

REST 是一种设计风格,而不是具体的实现。RESTful Web服务使用标准的HTTP方法(GET, POST, PUT, DELETE等)来操作资源。每个资源通过唯一的URL标识,客户端可以通过这个URL对资源进行创建、读取、更新和删除(CRUD)操作。

  • 资源(Resource):在REST中,任何可以被命名的信息都可以看作是一个资源,如用户、订单、评论等。
  • 表现层(Representation):资源的表现形式,比如JSON、XML等格式。
  • 状态转移(State Transfer):客户端和服务器之间通过交换资源的状态信息来进行交互。

在Spring框架中,@RestController 注解是用来标记一个类为RESTful风格的控制器。与 @Controller 不同的是,@RestController 自动添加了 @ResponseBody 注解,这意味着所有方法都将直接写入HTTP响应体中,而不需要经过视图解析器处理。因此,@RestController 通常用于构建API接口,返回的数据通常是JSON或XML格式,适合作为前后端分离架构中的后端服务。

@controller

传统的SpringMVC框架所带的注解,通过这个注解表明这个java类是一个控制器,可以对视图和数据进行操控,作为一个中间人才处理和展示数据,在现在的项目中已经不再适用,可以不用过于关注

@RestController

在上面的描述中已经知道了@RestController 自动添加了 @ResponseBody 注解,而这里的@ResponseBody即将所有的返回值自动装在了一个对象中,这些对象会被自动转换成JSON格式并写入到HTTP响应体中,所以通过@RestController控制器就只会返回对应的JSON数据,而不是像@controller一样需要同时返回数据和视图(也是是前端的代码);

总结

MVC控制器 主要用于传统的Web应用开发,其中涉及到视图渲染,最终目的是生成HTML页面供浏览器显示。
REST控制器 则主要用于提供API接口,支持前后端分离的架构,返回的数据通常是结构化的,如JSON或XML,由前端JavaScript框架或其他客户端消费。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com