日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

基于Spring Web Jackson對RequestBody反序列化失敗的解決

瀏覽:24日期:2023-08-11 13:33:16

最近在用Spring Web做一些Restful API的實現試驗,碰到了@RequestBody 的JSON無法被正常反序列化的問題。服務端的代碼大致如下:

@RequestMapping(value = '/aquas', method = RequestMethod.POST)public Aqua createAqua(@RequestBody Aqua aqua) { return aqua;}

研究后發現,由于Aqua這個實體類缺少了默認的無參構造函數(如果自行添加了有參數的構造函數,默認的無參構造函數就需要手動添加),Spring Web默認使用的JSON序列化框架-Jackson就無法正常反序列化。此時服務器會返回400 Bad Request.

解決的方法很多,比較簡單直接的方法是在Aqua這個實體類里面加一個無參的構造函數。比較復雜的也可通過向Jackson添加強制的轉換器的方法讓Jackson理解這個JSON對象。

今天這里要介紹的方式是利用注解讓Jackson理解如何反序列化實體類的JSON。這個方法更加靈活,也十分簡單。實體類的部分代碼如下:

@JsonCreatorpublic Aqua(@JsonProperty('aquaId') String id) { this.id = id;}

在自定義的構造函數上面添加@JsonCreator的注解,同時在參數上加上@JsonProperty的注解配合使用。加上這兩個注解之后,Jackson不需要無參構造函數也可以正常反序列化JSON了。

@JsonProperty注解也可以幫助Jackson理解JSON屬性名和實體類中的變量名不一致的情況。

在這里需要注意,如果有多個構造函數,建議僅僅在一個構造函數上面加上@JsonCreator注解,以免不必要的麻煩。

補充知識:Springboot springmvc 配置messageConverter(StringHttpMessageConverter)不生效原因解決

解決方法一:不推薦

解決方法如下,因為如果不設置register-default=’false’Spring 會默認幫我們注冊7個messageConvert 如下圖

<bean class='org.springframework.http.converter.StringHttpMessageConverter'> <constructor-arg value='UTF-8'></constructor-arg> <property name='supportedMediaTypes'> <list> <value>text/plain;charset=UTF-8</value> </list> </property> </bean> <mvc:annotation-driven enable-matrix-variables='true' content-negotiation-manager='contentNegotiationManager'> <mvc:message-converters register-defaults='false'> <ref bean='messageConverter'></ref> </mvc:message-converters> </mvc:annotation-driven>

如下圖所示,而且StringHttpMessageConverter,網上有人說,需要把mvc:annotation注解移動到最后,也有人說,messageConverter需要在mvc-converter之前注入SPring容器,眾說紛紜,不妨試試我這種方法,我的理解應該是,Spring會幫我們注入一些默認的,但是這些并不是我們需要的,而且我們在配置的時候,沒有及時的覆蓋掉Spring默認配置的。

所以會造成配置之后無效果的問題。筆者Spring版本為5.0.3

基于Spring Web Jackson對RequestBody反序列化失敗的解決

maven依賴如下

<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.0.3.RELEASE</version> </dependency> <mvc:annotation-driven enable-matrix-variables='true' content-negotiation-manager='contentNegotiationManager'> <mvc:message-converters register-defaults='false'> <ref bean='messageConverter'></ref> <ref bean='jackson2HttpMessageConverter'></ref> </mvc:message-converters> <mvc:path-matching path-helper='mph'></mvc:path-matching></mvc:annotation-driven>

方法2 ,看看你的文件字符編碼是否正確?

比如有的文件是GBK,有的文件是UTF-8,這種情,無論怎么改都會亂碼的。

以上這篇基于Spring Web Jackson對RequestBody反序列化失敗的解決就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费污视频在线一区| 欧美一区二区三区高清视频| 午夜亚洲精品| 三级亚洲高清视频| 青草国产精品久久久久久| 日本麻豆一区二区三区视频| 欧美亚洲一区二区三区| 国产精品网站在线看| 精品福利久久久| 精品日产乱码久久久久久仙踪林| 精品国产欧美日韩| 香蕉久久精品| 亚洲一区有码| 国产调教精品| 国产一区一一区高清不卡| 久久精品免费一区二区三区| 亚洲精品在线观看91| 涩涩涩久久久成人精品| 国产极品一区| 亚洲成人一区在线观看| 香蕉久久国产| 日本va欧美va欧美va精品| 国产精品18| 欧美在线观看视频一区| 另类av一区二区| 欧美中文一区| 夜鲁夜鲁夜鲁视频在线播放| 在线综合欧美| 国产探花在线精品| 激情欧美国产欧美| 97精品资源在线观看| 欧美激情另类| 亚洲一级淫片| 成人美女视频| 日韩精品中文字幕一区二区| 日韩深夜视频| 日本a级不卡| 欧美日韩在线网站| 久久丁香四色| 视频一区中文字幕| 美女久久久精品| 另类亚洲自拍| 日韩一区电影| 日韩高清在线不卡| 91精品韩国| 国产精品视频一区视频二区| 亚洲免费观看| 欧美韩日一区| 国产欧美精品| 美日韩精品视频| 国产精品亚洲一区二区三区在线观看| 日韩三级一区| 亚洲高清影视| 特黄毛片在线观看| 国产精品毛片久久久| 91精品99| 中文字幕在线看片| 国产精品日本一区二区不卡视频| 夜夜精品视频| 伊人久久国产| 久久中文在线| 亚洲欧洲日韩| 欧美精品激情| 日韩欧美二区| 久久精品伊人| 亚洲人成网站在线在线观看| 99久久99视频只有精品| 国产欧美日本| 日本伊人久久| 午夜一级久久| 国产综合色区在线观看| 精品三级av在线导航| 欧美日本久久| 亚洲免费一区三区| 免费看的黄色欧美网站| 久久久久久久久丰满| 手机在线电影一区| 精品伊人久久| 久久av综合| 亚洲v天堂v手机在线| 黄色在线一区| 亚洲一级二级| 五月精品视频| 亚洲国产成人精品女人| 免费久久久久久久久| jizzjizz中国精品麻豆| 精品一区二区三区的国产在线观看| 日本99精品| 日本成人在线不卡视频| 亚洲青青久久| 日本va欧美va瓶| 欧美精品三级在线| 日韩国产在线观看| 亚洲精品乱码久久久久久蜜桃麻豆| 国产精品日本| 国产精品毛片| 亚洲精品日韩久久| 日本欧美一区| 日本伊人午夜精品| 日韩成人午夜精品| 在线观看视频免费一区二区三区| 麻豆91精品| 亚洲制服少妇| 樱桃成人精品视频在线播放| 午夜久久黄色| 蜜臀91精品一区二区三区| 日韩精品一卡二卡三卡四卡无卡| 蜜桃av一区二区在线观看| 国产精品日韩精品在线播放| 久久三级中文| 日韩一区电影| 尹人成人综合网| 亚洲欧美网站在线观看| 国产一精品一av一免费爽爽| 美女视频网站久久| 欧美激情视频一区二区三区免费 | 99国产精品私拍| 免费成人性网站| 欧美日韩亚洲国产精品| 国产极品嫩模在线观看91精品| 成人在线观看免费视频| 伊人久久国产| 欧美精品自拍| 日本91福利区| 成人午夜在线| 国产精品日韩久久久| 香蕉久久久久久| 欧美激情亚洲| 亚洲手机视频| 亚洲精品福利| 国产高清亚洲| 欧美搞黄网站| 日韩不卡免费视频| 精精国产xxxx视频在线野外| 麻豆91精品| 精品欧美视频| 欧美va天堂在线| 91欧美极品| 天堂日韩电影| 日韩精品免费视频一区二区三区| 国产在线视频欧美一区| 红桃视频亚洲| 久久久精品国产**网站| 黄色欧美日韩| 久久亚洲人体| 香蕉成人久久| 红杏一区二区三区| 亚洲一区二区三区免费在线观看| 国产欧美一区二区色老头| 日韩精品欧美激情一区二区| 日韩精品久久理论片| 久久av网址| 午夜亚洲福利在线老司机| 精品一区视频| 免费人成在线不卡| 国产欧美一区二区三区精品酒店| 中文一区一区三区免费在线观| 欧美激情视频一区二区三区免费| 午夜久久一区| 日韩av片子| 日韩高清一区在线| 九一国产精品| 国产精品v一区二区三区| 国产一级久久| 日韩毛片在线| 国产精品嫩模av在线| 欧美69视频| 国际精品欧美精品| 日韩va亚洲va欧美va久久| 蜜桃视频欧美| 麻豆mv在线观看| 欧美日韩va| 亚洲欧美久久| 国产美女精品视频免费播放软件| 国产精品毛片在线| 久久亚洲成人| 水蜜桃久久夜色精品一区| 欧美日一区二区三区在线观看国产免| 亚洲一区日韩| 久久精品99久久无色码中文字幕| 国产福利一区二区三区在线播放| 欧美中文日韩| 999精品一区| 久草免费在线视频| 国产日韩一区二区三区在线| 美女91精品| 欧美精品九九| 亚洲韩日在线| 四季av一区二区凹凸精品| 亚洲青青久久| 蜜臀久久99精品久久久久久9| 亚洲成人一区在线观看| 国产精品原创| 福利一区二区免费视频| 国产欧美另类| 国产精品中文字幕亚洲欧美| 中文字幕一区二区精品区| 国产精品外国| 蜜桃av一区二区在线观看| 巨乳诱惑日韩免费av|