天天看点

搞定 @RestController 一篇文章就够了

文章目录

    • 一、知识点讲解
    • 二、示例讲解

一、知识点讲解

进入源码:

搞定 @RestController 一篇文章就够了

可知

@RestController

注解相当于

@ResponseBody

@Controller

合在一起的作用

要想明白

@RestController

的作用,首先需要明白

@ResponseBody

@Controller

的作用。

  • @Controller

    :将当前修饰的类注入 IOC 容器,使得从该类所在的项目跑起来的过程中,这个类就被实例化。同时也有语义化的作用,即代表该类是充当 Controller 的作用
  • @ResponseBody

    :它的作用就是指该类中所有的API接口返回的数据,不管你对应的方法返回 Map 或是其他Object,它会以 Json 字符串的形式返回给客户端

    关于

    @ResponseBody

    的具体用法可以参考:学习 ResponseBody 响应 json 数据一篇文章就够了

所以

@RestController

注解其实就是将 return 中的内容以 JSON字符串的形式返回客户端

需要注意的是,如果要配合 sping-mvc 的视图解析器使用,也就是如果要返回 html 或者 jsp 时,就只能用

@Controller

,因为当

@Controller

修饰的时候,Spring 才会认为返回的是一个 视图

二、示例讲解

搞定 @RestController 一篇文章就够了

等同于:

搞定 @RestController 一篇文章就够了