@RequestBody注解转对象中驼峰格式的参数无法接收到数据的问题解决方法
1.问题:驼峰格式的参数传递到后端,@RequestBody注解标注的实体对象参数没有接收到对应的数据
前端传参:
执行结果:
请求参数实体:
import lombok.Data;
/** * 请求参数 * @author qzz */
@Data
public class DailyInspectTsznoRequestJson {
private String belongedTo;
private String recordNumber;
private String checkFormNumber;
private String tzsno;
private String entCode;
}
2.解决方法:
方法一:修改前端传参格式,驼峰格式转换为下划线小写格式
把前端请求参数修改成 下划线小写格式:
后端接收参数不变。
重启项目,执行效果如下:
发现,问题得到解决。
方法二:在后端属性名上面添加 @JsonProperty("")注解
,把自己的属性名称填进去,就可以了(推荐使用)
package com.hwariot.device.report.dto.json.request.openapi;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/** * 请求参数 * * 前端传递belongedTo等参数到后端的时候,belongedTo等参数是有值的,但是后端拿到的时候,就没有值了 * 解决办法: * 在属性名上面添加 @JsonProperty("")注解,把自己的属性名称填进去,就可以了 * @author qzz */
@Data
public class DailyInspectTsznoRequestJson {
@JsonProperty("belongedTo")
private String belongedTo;
@JsonProperty("recordNumber")
private String recordNumber;
@JsonProperty("checkFormNumber")
private String checkFormNumber;
@JsonProperty("tzsno")
private String tzsno;
@JsonProperty("entCode")
private String entCode;
}
前端参数保存驼峰格式不变,只修改后端。
然后重启项目,重新请求,执行效果如下:
发现数据都接收到了,问题得到解决。
注意:推荐使用第二种方法。
本文为[12程序猿]所创,
原文链接,感谢https://blog.csdn.net/qq_26383975/article/details/125896353
我会慢慢更新一下Java 的学习知识,在我所写的内容中有不懂的可以直接私信我。