@RequestBody時(shí)第二個(gè)字母大寫,映射不到的解決
@RequestBody第二個(gè)字母大寫,映射不到
記錄一下今天遇到的一個(gè)問題, 賊難受
controller
/** * 添加 * * @param requestNavigationTagVO * @return */ @PostMapping("/add") public JsonData add(@RequestBody RequestNavigationTagVO requestNavigationTagVO) { navigationTagService.add(requestNavigationTagVO); return JsonData.ok(); }
RequestNavigationTagVO
@Builder @AllArgsConstructor @NoArgsConstructor @Data public class RequestNavigationTagVO { /** * id */ private Long id; /** * 所屬導(dǎo)航id */ @NotNull(groups = {AddNavigationTag.class, ModifyNavigationTag.class}, message = "所屬導(dǎo)航id不能為空") private Long pId; /** * 標(biāo)簽名稱 */ @NotBlank(groups = {AddNavigationTag.class, ModifyNavigationTag.class}, message = "標(biāo)簽名稱不能為空") private String name; /** * 排序 */ @NotNull(groups = {AddNavigationTag.class, ModifyNavigationTag.class}, message = "排序不能為空") private Integer sort; }
postman調(diào)接口
{ "pId": 654577072911111, "name":"中餐", "sort":1 }
這是日志拿到的數(shù)據(jù)
可以看到拿不到pId數(shù)據(jù)(p_id的駝峰寫法),
原因:這里使用的@Data注解(省去了get和set方法)
public Long getPId() { ... } public void setPId(Long PId) { ... }
而javaBean的規(guī)范導(dǎo)致json傳參首字母大寫將永遠(yuǎn)獲取不到
參考javaBean的規(guī)范導(dǎo)致json傳參首字母大寫將永遠(yuǎn)獲取不到。。。
解決辦法:
1,不去使用首字目大寫或第二個(gè)字母大寫的參數(shù)
2,自己生成get和set方法
3,使用@JsonProperty注解
@JsonProperty("pId") private Long pId;
Springboot中@RequestBody大小寫轉(zhuǎn)換
使用fastjson
請(qǐng)求參數(shù)首字母轉(zhuǎn)為小寫
@Data public class RequestModel { @JsonProperty("BODY") @JSONField(name = "BODY") private RequestBodyModel Body; }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java web Hibernate如何與數(shù)據(jù)庫鏈接
這篇文章主要介紹了Java web Hibernate如何與數(shù)據(jù)庫鏈接,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06java時(shí)間段查詢將00:00:00更換成23:59:59
本文主要介紹了java時(shí)間段查詢將00:00:00更換成23:59:59,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01簡(jiǎn)單注解實(shí)現(xiàn)集群同步鎖(spring+redis+注解)
本文主要介紹了簡(jiǎn)單注解實(shí)現(xiàn)集群同步鎖的步驟與方法。具有一定的參考價(jià)值,下面跟著小編一起來看下吧2017-01-01springBoot controller,service,dao,mapper,model層的作用說明
這篇文章主要介紹了springBoot controller,service,dao,mapper,model層的作用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Mybatis-plus如何在xml中傳入自定義的SQL語句
這篇文章主要介紹了Mybatis-plus如何在xml中傳入自定義的SQL語句問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05Java對(duì)敏感數(shù)據(jù)進(jìn)行加密的方法詳解
敏感數(shù)據(jù)的加密是數(shù)據(jù)安全的重要方面,尤其是對(duì)于手機(jī)號(hào)和身份證號(hào)這類個(gè)人信息,本文主要為大家介紹了Java對(duì)敏感數(shù)據(jù)進(jìn)行加密的相關(guān)方法,希望對(duì)大家有所幫助2024-03-03java中List刪除時(shí)需要的注意事項(xiàng)
最近在利用java中的LIST在刪除時(shí)發(fā)現(xiàn)了一個(gè)錯(cuò)我,通過查找相關(guān)的資料終于解決了,覺著有必要分享處理給同樣遇到這個(gè)問題的朋友參考,下面這篇文章主要介紹了java中List刪除時(shí)需要的注意事項(xiàng),需要的朋友可以一起來看看吧。2017-01-01Java 中普通代碼塊,構(gòu)造代碼塊,靜態(tài)代碼塊區(qū)別及代碼示例
這篇文章主要介紹了Java 中普通代碼塊,構(gòu)造代碼塊,靜態(tài)代碼塊區(qū)別及代碼示例的相關(guān)資料,需要的朋友可以參考下2017-01-01