这篇文章将为大家详细讲解有关Springboot中@RequestBody注解使用的注意事项,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
@RequestBody注解踩坑
@RequestBody json注入Bean属性为空
接收JSON数据注入到Bean中,必须要加RuquestBody注解
判断属性名称字段是否相同
spring 默认不为首字母大写的JavaBean进行赋值操作,若首字母大写进行赋值操作需加入@JsonProperty(value=“AlarmTime”)注解
注:JavaBean规范 属性的首字母小写,驼峰命名:以小写字母开头,每个单词首字母大写
首字母大写无法赋值,修改Bean属性为Public同样可以解决问题(不建议此方案解决)
例:
具体操作亲试
@RequestBody注解的一些注意事项
@RequestBody注解用来获取请求体中的数据,直接使用得到的是key=value&key=value…结构的数据,因此get方式不适用(get方式下@RequestBody获取不到任何数据)。
例:
public void test1(@RequestBody String body){ system.out.println(body);}
输出结果:
username=hehe&age=20
使用@RequestBody注解后,可以在方法中创建一个集合对象,前端提交的集合数据可以直接被注入到方法的集合对象中,而不需要创建一个pojo对象进行集合的封装。
如果想要将前端提交的json字符串自动封装到一个对象中,需要导入jackson的相关jar包,并使用@RequestBody注解。
注:springmvc默认使用MappingJacksonHttpMessageConverter对json数据进行转换。
使用@RequestBody 前后端参数要匹配个数不能少。字段名字要一样。
关于“Springboot中@RequestBody注解使用的注意事项”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。