1.概述

RequestParam与RequestBody是在springmvc接收参数时使用较多的两种注解,然而两者之间的区别、使用方式和使用场合你是否真的清楚,本文将基于@RequestParam与@RequestBody的使用场合与使用方式进行分析,并结合一些案例进行演示。

[email protected]

2.1 属性
RequestParam主要的属性包括name与value,但两者又互为别名,所以基本上是一样的。源码如下:
SpringMVC从入门到放弃之@RequestParam与@RequestBody
2.2 Get方式请求
1.controller层代码
SpringMVC从入门到放弃之@RequestParam与@RequestBody
2.postman请求
SpringMVC从入门到放弃之@RequestParam与@RequestBody
3.浏览器请求
SpringMVC从入门到放弃之@RequestParam与@RequestBody
由上文可以看出:当利用@RequestParam注解时,利用get方式请求,能够获取@RequestParam中指定名称的值。

2.3 Post请求方式
1.controller层代码
SpringMVC从入门到放弃之@RequestParam与@RequestBody
2.postman请求
SpringMVC从入门到放弃之@RequestParam与@RequestBody
由上文可以看出:当利用@RequestParam注解时,利用Post方式请求,能够获取@RequestParam中指定名称的值。

[email protected]

3.1 Get方式请求
1.controller层代码
SpringMVC从入门到放弃之@RequestParam与@RequestBody
2.postman请求
SpringMVC从入门到放弃之@RequestParam与@RequestBody
3.2 Post方式请求
1.controller层代码
SpringMVC从入门到放弃之@RequestParam与@RequestBody
2.postman测试
SpringMVC从入门到放弃之@RequestParam与@RequestBody

4.小结

1.GET方式、POST方式均可以在body体中传递参数,但GET请求方式中添加body是不符合规范的,而且老版本的postman是不支持在GET请求里加body的,新版本的postman最近才添加上此功能;
2.在POST请求中(包括PUT、DELETE、POST),均可以使用@RequestParam与@RequestBody,使用@RequestParam则需要在url中传参,使用@RequestBody参数则需要放在body体中;
3.为了符合规范,一般GET请求使用@RequestParam来获取参数值,而在Post请求方式中,使用@RequestParam和@RequestBody均可,主要根据参数形式来制定,若参数为json形式,最好放在body体中,具体可根据场景来制定。

5.参考文献

1.https://blog.csdn.net/HermitSun/article/details/89889743
2.https://blog.csdn.net/xinluke/article/details/52710706

相关文章:

  • 2021-10-30
  • 2021-06-20
  • 2021-09-21
  • 2021-05-21
  • 2021-07-19
  • 2021-06-06
  • 2021-03-28
  • 2021-10-09
猜你喜欢
  • 2021-09-19
  • 2022-01-02
  • 2021-12-02
  • 2021-09-14
  • 2021-04-04
  • 2021-11-04
  • 2021-07-29
相关资源
相似解决方案