import lombok.Data;
@Data
public class TestDTO {
private Integer pId;
}
如上代碼所示,在這個DTO中,傳遞如下參數,但是後端無法接收
{
"pId":1
}
原因:使用lombok的@Data註解後,生成的get/set方法如下
// 參數名的首字母和第二個字母都變成了大寫
getPId();
setPId()
而在JavaBean規範中,有如下規範,所以這裏方法名應爲getpId和setpId
如果屬性名的第二個字母大寫,那麼該屬性名直接用作 getter/setter 方法中 get/set 的後部分,就是說大小寫不變。例如屬性名爲uName,方法是getuName/setuName。
解決辦法
- 自己生成get/set方法
- 使用JsonProperty註解