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

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

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

瀏覽:22日期: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久久,三上悠亚国产精品一区二区三区
欧美精品1区| 欧美天堂一区| 天堂av在线| 日韩av有码| 亚洲天堂免费电影| 99久久九九| 午夜国产精品视频| 国产亚洲一级| 亚洲专区视频| 欧美日韩va| 久久免费视频66| 中国字幕a在线看韩国电影| 日韩精品一区二区三区免费观影| 黑人精品一区| 国产精品av久久久久久麻豆网| 午夜国产一区二区| 水蜜桃久久夜色精品一区的特点 | 亚洲视频播放| 欧美中文字幕| 91九色综合| 激情久久一区二区| 日韩不卡免费高清视频| 黄色成人在线网址| 亚洲久久视频| 久久久久久亚洲精品美女| 福利一区视频| 亚洲婷婷免费| 亚洲91网站| 久久精品网址| 91九色精品国产一区二区| 日韩欧美精品一区二区综合视频| 国产亚洲电影| 欧美三级精品| 综合激情在线| 国产成人77亚洲精品www| 91超碰国产精品| 国产亚洲人成a在线v网站| 福利在线免费视频| 亚洲精品123区| 国产精品mv在线观看| 欧美sm一区| 一区二区亚洲视频| 日本一区二区高清不卡| 久久福利一区| 国产成人久久精品一区二区三区| 欧美日韩三区| 美女免费视频一区| 亚洲在线网站| 老司机免费视频一区二区三区| 九九久久婷婷| 国产精品99久久免费观看| 激情久久五月| 国产精品午夜一区二区三区| 欧洲激情综合| 久久尤物视频| 巨乳诱惑日韩免费av| 国产精品xxx| 国产精品女主播一区二区三区| 牛牛精品成人免费视频| 在线一区视频| 91嫩草亚洲精品| 亚洲深夜av| 精品久久久久中文字幕小说| 老司机久久99久久精品播放免费| 91一区二区三区四区| 午夜性色一区二区三区免费视频| 麻豆mv在线观看| 日韩精品乱码av一区二区| 久久婷婷av| 久久99久久久精品欧美| 欧美日韩国产高清| 国语精品一区| 日本午夜精品一区二区三区电影 | 欧产日产国产精品视频| 日韩精品一区二区三区av| 99久久精品费精品国产| 国产精品jk白丝蜜臀av小说| 蜜桃视频第一区免费观看| 久久久亚洲一区| 精品精品99| 国产美女亚洲精品7777| 久久高清一区| 色在线中文字幕| 国产精品99久久久久久董美香| 日本欧洲一区二区| 亚洲特色特黄| 欧美sm一区| 高清精品久久| 久久久91麻豆精品国产一区| 日韩精彩视频在线观看| 在线亚洲自拍| 久久要要av| 福利精品在线| 久久av资源| 欧美欧美黄在线二区| 免费视频最近日韩| 在线视频日韩| 久久青草久久| 亚洲成a人片| 桃色av一区二区| 国产精品精品国产一区二区| 国产精品天天看天天狠| 日韩视频1区| 蜜桃91丨九色丨蝌蚪91桃色| 欧美日韩精品免费观看视频完整| 成人羞羞在线观看网站| 吉吉日韩欧美| 麻豆mv在线观看| 日本不卡免费高清视频在线| 国产精品chinese| 久久国产三级| 欧美精品国产| 日韩欧美中文字幕一区二区三区 | 日韩国产一区二| 日韩精品一级中文字幕精品视频免费观看 | 亚洲久久视频| 香蕉成人久久| 日韩中文字幕91| 野花国产精品入口| 午夜一级在线看亚洲| 亚洲在线网站| 中文字幕日本一区| 亚洲精品乱码日韩| 亚洲免费毛片| 日本成人中文字幕| 日韩在线观看中文字幕| 色狠狠一区二区三区| 亚洲免费毛片| 欧美日韩伊人| 麻豆精品在线播放| 国产成人免费精品| 麻豆精品蜜桃| 红桃视频国产一区| 制服诱惑一区二区| 亚洲欧洲国产精品一区| 欧美一区二区三区久久精品| 国产精品传媒麻豆hd| 高清一区二区三区av| 日韩高清中文字幕一区二区| 欧美a级片一区| 一区在线视频观看| 美女精品网站| 91午夜精品| 九九久久国产| 久久久精品久久久久久96| 亚洲一区网站| 日韩美女精品| 开心激情综合| 日韩在线欧美| 亚洲欧美日本国产专区一区| 亚洲91网站| 美女视频黄免费的久久| 成人欧美一区二区三区的电影| 亚洲91视频| 亚洲人成精品久久久| 欧美成人精品一级| 99成人超碰| 亚洲精品九九| 国际精品欧美精品| 亚洲国产成人精品女人| 97精品国产99久久久久久免费| 成人污污视频| 亚洲综合不卡| 日韩和欧美一区二区三区| 国产在线不卡一区二区三区 | 99精品网站| 亚洲精品影视| 国产欧洲在线| 亚洲欧洲免费| 水蜜桃精品av一区二区| 欧美 日韩 国产精品免费观看| 中文字幕亚洲精品乱码| 国产成人精品999在线观看| 野花国产精品入口| 久久中文字幕一区二区三区| 好看不卡的中文字幕| 日韩精品91亚洲二区在线观看| 成人国产综合| 日韩精品一二三四| 国产成人1区| 亚洲精品人人| se01亚洲视频 | 深夜福利亚洲| 蜜臀久久精品| 国产日产一区| 亚洲欧洲一区| 国产videos久久| 蜜臀av性久久久久蜜臀aⅴ四虎| 精品亚洲自拍| 综合一区av| 久久久国产亚洲精品| 国产欧美三级| 中国女人久久久| 日本黄色精品| 日本欧美久久久久免费播放网| 久久国产中文字幕| 国产精品黄色片| 亚洲欧美日韩国产一区二区| 在线看片福利| 国产精品久久久久久久久免费高清|