@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

posted @ 2022-08-25 11:04  南瓜不难  阅读(541)  评论(0编辑  收藏  举报