欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

SpringBoot http请求注解@RestController原理解析

时间:2021-04-20 08:57:54|栏目:JAVA代码|点击:

这篇文章主要介绍了SpringBoot http请求注解@RestController原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

@RestController

@RestController = @Controller + @ResponseBody组成,等号右边两位同志简单介绍两句,就明白我们@RestController的意义了:

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

@ResponseBody 它的作用简短截说就是指该类中所有的API接口返回的数据,甭管你对应的方法返回Map或是其他Object,它会以Json字符串的形式返回给客户端,本人尝试了一下,如果返回的是String类型,则仍然是String。

@RestController
@RequestMapping("test")
public class SampleController {

  @GetMapping
  public Map testGet() {
    return new HashMap<String, String>(){{
      put("name", "springboot");
    }};
  }

  @GetMapping(path = "str")
  public String testGetStr() {
    return "OK";
  }
}

这部分代码对于Map返回则是JSON String,对于String则仍然是String

当将@RestController换成@Controller之后,对于/test的返回值如下图:

从报错可以看见,当@Controller修饰的时候,Spring以为会返回一个View(也就是MVC中的那C)但是返回的东西却是一个Map。

上一篇:SpringCloud Bus消息总线的实现

栏    目:JAVA代码

下一篇:解决SpringMvc后台接收json数据中文乱码问题的几种方法

本文标题:SpringBoot http请求注解@RestController原理解析

本文地址:http://www.codeinn.net/misctech/105130.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有