背景

今天在调试项目的时候遇到一个坑,用Postman发送一个post请求,在Springboot项目使用@RequestBody接收时参数总是报不存在,但是多次检查postman上的请求格式以及项目代码都没有问题

Postman:

关于Springboot | @RequestBody 接收到的参数对象属性为空的问题

请求参数:

{
	"firstName":"fdsaf",
	"lastName":"dfasdf"
}

Controller:

关于Springboot | @RequestBody 接收到的参数对象属性为空的问题

Entity

关于Springboot | @RequestBody 接收到的参数对象属性为空的问题

通过debug模式可以发现传进到实体的参数都为null

解决思路

经过分析,有可能是springboot解析器在解析json过程中出现问题,因字段名驼峰命名无法匹配字段名导致,加上如下注解即可:

//@JsonProperty(value = "firstName")

关于Springboot | @RequestBody 接收到的参数对象属性为空的问题

修改后结果:

关于Springboot | @RequestBody 接收到的参数对象属性为空的问题

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。