Json轉(zhuǎn)化為Java對(duì)象的實(shí)例詳解
Json轉(zhuǎn)化為Java對(duì)象的實(shí)例詳解
問題:前后端數(shù)據(jù)交互時(shí),經(jīng)常會(huì)遇到Json串與Java對(duì)象轉(zhuǎn)化的問題,有的Java對(duì)象中還包含了List對(duì)象等。
解決方案:
引入 json-lib包,Maven坐標(biāo)如下:
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>
Json串轉(zhuǎn)化為List對(duì)象:
JSONArray jsonArray = JSONArray.fromObject(jsonString); List<Config> list = (List) JSONArray.toCollection(jsonArray, Class.class);
Json串轉(zhuǎn)化為Object對(duì)象
JSONObject jsonObject = JSONObject.fromObject(jsonString); Object object = (Object) JSONObject.toBean(jsonObject, Object.class);
Json串轉(zhuǎn)化為包含List對(duì)象的Object對(duì)象
JSONObject jsonObject = JSONObject.fromObject(jsonString); Map<String, Class> listMap = new HashMap<String, Class>(); listMap.put("list", listObject.class); Object object = (Object) JSONObject.toBean(jsonObject, Object.class, listMap);
PS:Object對(duì)象中可能包含了多個(gè)對(duì)象,對(duì)象中可能又包含了多個(gè)List對(duì)象互相嵌套。
只需要把所有的List對(duì)象值組裝成Map對(duì)象即可,對(duì)應(yīng)的key為List對(duì)象的屬性名稱。
以上就是Json轉(zhuǎn)化為Java對(duì)象的詳解,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- Java中Map與JSON數(shù)據(jù)之間的互相轉(zhuǎn)化
- 詳解JSON與?Java對(duì)象之間的轉(zhuǎn)化
- Java中Json與List、Map、entity的互相轉(zhuǎn)化
- java 將jsonarray 轉(zhuǎn)化為對(duì)應(yīng)鍵值的jsonobject方法
- json-lib將json格式的字符串,轉(zhuǎn)化為java對(duì)象的實(shí)例
- java中實(shí)體類和JSON對(duì)象之間相互轉(zhuǎn)化
- Java 中Json中既有對(duì)象又有數(shù)組的參數(shù)如何轉(zhuǎn)化成對(duì)象(推薦)
相關(guān)文章
Spring中的兩種代理JDK和CGLIB的區(qū)別淺談
本篇文章中主要介紹了Spring中的兩種代理JDK和CGLIB的區(qū)別淺談,詳解的介紹了JDK和CGLIB的原理和方法,有需要的朋友可以了解一下2017-04-04SpringBoot?HikariCP配置項(xiàng)及源碼解析
這篇文章主要為大家介紹了SpringBoot?HikariCP配置項(xiàng)及源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02spring mvc 組合mybatis框架實(shí)例詳解
本項(xiàng)目采用 maven 結(jié)構(gòu),主要演示了 spring mvc + mybatis,controller 獲取數(shù)據(jù)后以json 格式返回?cái)?shù)據(jù)。對(duì)spring mvc 組合mybatis的方法感興趣的朋友可以參考下本文2018-01-01Java使用新浪微博API通過賬號(hào)密碼方式登陸微博的實(shí)例
這篇文章主要介紹了Java使用新浪微博API通過賬號(hào)密碼方式登陸微博的實(shí)例,一般來說第三方App都是采用OAuth授權(quán)認(rèn)證然后跳轉(zhuǎn)之類的方法,而本文所介紹的賬號(hào)方式則更具有自由度,需要的朋友可以參考下2016-02-02Spring定時(shí)任務(wù)實(shí)現(xiàn)與配置(一)
這篇文章主要為大家詳細(xì)介紹了Spring定時(shí)任務(wù)的實(shí)現(xiàn)與配置第一篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06java并發(fā)編程專題(八)----(JUC)實(shí)例講解CountDownLatch
這篇文章主要介紹了java CountDownLatch的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07關(guān)于BindingResult的使用總結(jié)及注意事項(xiàng)
這篇文章主要介紹了關(guān)于BindingResult的使用總結(jié)及注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12