開始我用List<泛型>接受json串,如下,結(jié)果list內(nèi)并非泛型對象,而是JSONObject對象。這樣在遍歷的時(shí)候就報(bào)了轉(zhuǎn)化異常的錯(cuò)誤。我不知道為什么springmvc在處理這個(gè)的時(shí)候并沒有將json對象轉(zhuǎn)化為泛型對象(我認(rèn)為應(yīng)該能獲取到,可能是配置問題或者使用不當(dāng)導(dǎo)致的),這個(gè)錯(cuò)誤用實(shí)際證明了java是假泛型。
如何解決呢,暫時(shí)有兩種方案,第一種是使用json工具類轉(zhuǎn)化json對象為泛型對象,第二種使用數(shù)組接受,然后將數(shù)組轉(zhuǎn)化為list對象。代碼如下下。如果哪天找到了更好的解決方案,或者研究了springmvc的源碼,我再來解釋或者解決這個(gè)問題吧~做個(gè)筆記先
publicResult<Integer, State> saveUserPositions(@RequestBody List<UserPosition> userPositions) {}public Result<Integer, State> saveUserPositions(@RequestBody UserPosition[] userPositions) {}
注:
該方法可以快速將array轉(zhuǎn)換為list
List<UserPosition> position = new ArrayList<>(Arrays.asList(userPositions));
以上這篇springmvc接收json串,轉(zhuǎn)換為實(shí)體類List方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選