@RequestBody的用法问题

@RequestBody的用法问题

@PostMapping("/create")
@ResponseBody
public Map createBook(Book book)

老师,这里传入的参数用实体类Book去接收,这和下面这个加上了@RequestBody注解有什么区别吗

@PostMapping("/create")
@ResponseBody
public Map createBook(@RequestBody Book book)


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,传入Book属性是指前端通过表单方式提交Book数据,或者键值对的形式传入Book属性以及对应的属性值,例如:xxx?bookId=book001&bookName=红楼梦。

祝学习愉快~

  • fever腾腾 提问者 #1

    xxx?bookId=book001&bookName=红楼梦

    这种方式向后端发起请求不也是以json的方式传输的嘛....

    如果不是的话,什么时候才会以json的方式向后台发起请求呀....

    2021-06-15 20:45:14
  • 好帮手慕阿满 回复 提问者 fever腾腾 #2

    ​同学你好,xxx?bookId=book001&bookName=红楼梦  是类似地址栏中传送的数据,并不是json格式的。使用json格式发送请求是根据具体需求决定的,例如Spring Boot电商中,如下就是以json格式向后台发送数据的。

    http://img1.sycdn.imooc.com//climg/60c95bf709c8600d08400446.jpg

    祝学习愉快~

    2021-06-16 10:05:17
  • fever腾腾 提问者 回复 好帮手慕阿满 #3

    明白了!谢谢老师!

    2021-06-16 10:34:50
好帮手慕阿满 2021-06-15 13:48:34

同学你好,@RequestBody用来接收前端传递给后端的json字符串中的数据。如果前端传入的是json数据类型,使用@RequestBody接收。如果前端传入的Book的属性,则使用第一种方式。

祝学习愉快~

  • 提问者 fever腾腾 #1

    什么叫传入Book的属性呀...

    2021-06-15 15:14:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师