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)化為L(zhǎng)ist對(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為L(zhǎng)ist對(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)文章
springboot項(xiàng)目實(shí)現(xiàn)定時(shí)備份數(shù)據(jù)庫導(dǎo)出sql文件方式
這篇文章主要介紹了springboot項(xiàng)目實(shí)現(xiàn)定時(shí)備份數(shù)據(jù)庫導(dǎo)出sql文件方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03
java項(xiàng)目中的絕對(duì)路徑和相對(duì)路徑用法說明
這篇文章主要介紹了java項(xiàng)目中的絕對(duì)路徑和相對(duì)路徑用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-08-08
java實(shí)現(xiàn)清理DNS Cache的方法
這篇文章主要介紹了java實(shí)現(xiàn)清理DNS Cache的方法,分析了幾種常用的清理方法,并給出了反射清理的完整實(shí)例,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01
Java日期時(shí)間與正則表達(dá)式超詳細(xì)整理(適合新手入門)
如果使用得當(dāng),正則表達(dá)式是匹配各種模式的強(qiáng)大工具,下面這篇文章主要給大家介紹了關(guān)于Java日期時(shí)間與正則表達(dá)式超詳細(xì)整理的相關(guān)資料,本文非常適合新手入門,需要的朋友可以參考下2023-04-04
解決idea出現(xiàn)的java.lang.OutOfMemoryError:?Java?heap?space的問題
我們?cè)谑褂胕dea的時(shí)候經(jīng)常會(huì)遇到一些問題,本文介紹了如何解決idea出現(xiàn)的java.lang.OutOfMemoryError:?Java?heap?space的問題,文中有相關(guān)的圖文示例,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
SpringBoot ThreadLocal 簡(jiǎn)單介紹及使用詳解
ThreadLocal 叫做線程變量,意思是 ThreadLocal 中填充的變量屬于當(dāng)前線程,該變量對(duì)其他線程而言是隔離的,也就是說該變量是當(dāng)前線程獨(dú)有的變量,這篇文章主要介紹了SpringBoot ThreadLocal 的詳解,需要的朋友可以參考下2024-01-01

