springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究

springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究

ID:18225063

大?。?.31 MB

頁數(shù):15頁

時間:2018-09-15

springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究_第1頁
springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究_第2頁
springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究_第3頁
springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究_第4頁
springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究_第5頁
資源描述:

《springmvc關(guān)于json、xml自動轉(zhuǎn)換的原理研究》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、SpringMVC關(guān)于json、xml自動轉(zhuǎn)換的原理研究視圖配置省略.....pom中需要有以下依賴(Spring依賴及其他依賴不顯示):org.codehaus.ja

2、cksonjackson-core-asl1.9.13org.codehaus.jacksonjackson-mapper-asl1.9.13這個依賴分別是json序列化的依賴。ok。我們在

3、Controller中添加一個method:@RequestMapping("/)@ResponseBodypublicMapmap=newHashMap();map.put("list",employeeService.list());returnmap;}直接訪問地址:我們看到,短短幾行配置。使用@ResponseBody注解之后,Controller返回的對象自動被轉(zhuǎn)換成對應(yīng)的json數(shù)據(jù),在這里不得

4、不感嘆SpringMVC的強大。我們好像也沒看到具體的配置,唯一看到的就是*-dispatcher.那么spring到底是如何實現(xiàn)java對象到j(luò)son對象的自動轉(zhuǎn)換的呢?為什么轉(zhuǎn)換成了json數(shù)據(jù),如果想轉(zhuǎn)換成源碼分析本文使用的spring版本是4.0.2。?在講解這個配置之前,我們先了解下Spring的消息轉(zhuǎn)換機制。@ResponseBody這個注解就是使用消息轉(zhuǎn)換機制,最終通過json的轉(zhuǎn)換器轉(zhuǎn)換成json數(shù)據(jù)的。HttpMessageCon

5、verter接口就是Spring提供的http消息轉(zhuǎn)換接口。有關(guān)這方面的知識大家可以參考"參考資料"中的第二條鏈接,里面講的很清楚。下面開始分析這句配置:這句代碼在spring中的解析類是:在AnnotationDrivenBeanDefinitionParser源碼的152行parse方法中:分別實例化了RequestMappingHandlerMapping,ConfigurableWebBindingInitializer,RequestMa

6、ppingHandlerAdapter等諸多類。其中RequestMappingHandlerMapping和RequestMappingHandlerAdapter這兩個類比較重要。RequestMappingHandlerMapping處理請求映射的,處理@RequestMapping跟請求地址之間的關(guān)系。RequestMappingHandlerAdapter是請求處理的適配器,也就是請求之后處理具體邏輯的執(zhí)行,關(guān)系到哪個類的哪個方法以及轉(zhuǎn)換器等工作,這個類是我們講的重點,其中它的屬性me

7、ssageConverters是本文要講的重點。私有方法:getMessageConverters從代碼中我們可以,RequestMappingHandlerAdapter設(shè)置messageConverters的邏輯:1.如果節(jié)點有子節(jié)點message-converters,那么它的轉(zhuǎn)換器屬性messageConverters也由這些子節(jié)點組成。message-converters的子節(jié)點配置如下:

8、c:message-convertersregister-defaults="true">?2.message-converters子節(jié)點不存在或它的屬性register-defaults為tru

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。