测试无注解,@RequestBody,@RequestParam

springmvc用了也有一段时间了。可是对于@RequestBody,@RequestParam注入参数的方式还不是很懂,下面通过具体的例子来测试这两个注解的异同。

分别使用表单,postman进行测试(post请求)

表单

无注解:
前端:
在这里插入图片描述

后台:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200316111500786.png
结果:
在这里插入图片描述
在这里插入图片描述

postman

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:除了json格式请求,全部可以获取到参数数据

@RequestParam:

表单:
在这里插入图片描述
在这里插入图片描述

postman
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
发现用json请求报了个warning
于是百度:
在这里插入图片描述

总结:除了不支持json格式,其他的全部可以获取请求参数

@RequestBody:

表单:
在这里插入图片描述
在这里插入图片描述

postman:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:只有json格式的能获取到参数,那么传json数组怎样?抱着好奇心,再试

后台定义list参数接收数组
在这里插入图片描述
在这里插入图片描述
发现直接报错
直接换数组接收
在这里插入图片描述
在这里插入图片描述

还是报错

换成用String接收可以进来 那么怎么解析呢
为了方便,引入fastjson
在这里插入图片描述
在这里插入图片描述
发现值已经解析处理了 (key为list,值为1,2,3)

最后总结,使用@RequestBody注解时,只能使用json格式传参数,如果传入的是数组,需要进一步解析。

拓展(网上截的图):
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值