@RequestBody搭配@Data的坑
如果用@Data修飾實體類,里面的屬性最好不要用連續幾個相同字母,如果用千萬別用大寫。
比如下面這個User類
1
2
3
4
5
6
|
@Data public class User{ private Integer userId; private String tel; private String QQ; } |
如果這樣寫,你在后臺方法用@RequestBody獲取到的QQ會變成null
1
2
3
4
|
@PostMapping (value = "/addPrivGroup" ) public String addUser( @RequestBody User user){ return userService.addUser(user); } |
如果非要寫QQ或者qQ,要么不用@Data自己寫getter和setter,要么在對應屬性上加上@JsonProperty(value = “QQ”)
主要原因就是spring在接受參數的時候,不知道賦值方法是setQQ還是setqQ,導致賦值為null
@requestbody,json,Date類型轉換問題
@requestbody接收json參數 映射到 實體類中 Date(時間日期)類型轉換問題
app在傳輸Date類型數據時,與后臺接收有8小時時間差
1
2
3
|
@JsonFormat (pattern= "yyyy-MM-dd HH:mm:ss" ,timezone= "GMT+8" ) @DateTimeFormat (pattern= "yyyy-MM-dd HH:mm:ss" ) private Date departureTime; |
timezone主要解決“8小時”問題
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_38216502/article/details/109465481