变量命名不规范&我被deepseek骗了
首先是一个实体类@Datapublic class Dto {private String mNumber;}前端传来{"mNumber:"123"}为null的情况
编译之后我们看看class文件:getMNumber
public class Dto { private String mNumber; public Dto() { } public String getMNumber() { return this.mNumber; } public void setMNumber(String mNumber) { this.mNumber = mNumber; }}
由lombok生成的getset方法是首字母大写,其他不变的
前端传来{"mNumber:"123"}可以正确找到值的情况
而直接使用idea快速生成的getset如下:getmNumber
public class Dto { public String getmNumber() { return mNumber; } public void setmNumber(String mNumber) { this.mNumber = mNumber; } private String mNumber;}
在springboot3.0.2项目中,Jackson能够通过getmMumber获取正确值,而getMNumber返回的结果总是null
这是deepseek给出来蒙我的答案:
关于解决办法:除了修改字段等手段外,在使用lombok时添加上注解。(突然理解为什么实习的时候公司里的所有字段都要加上这个注解了)
@JsonProperty("mNumber")
private String mNumber;
页:
[1]