Json轉(zhuǎn)化為Java對(duì)象的實(shí)例詳解
Json轉(zhuǎn)化為Java對(duì)象的實(shí)例詳解
問(wèn)題:前后端數(shù)據(jù)交互時(shí),經(jīng)常會(huì)遇到Json串與Java對(duì)象轉(zhuǎn)化的問(wè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ì)象的詳解,如有疑問(wèn)請(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-04
SpringBoot?HikariCP配置項(xiàng)及源碼解析
這篇文章主要為大家介紹了SpringBoot?HikariCP配置項(xiàng)及源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
spring 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-01
Java使用新浪微博API通過(guò)賬號(hào)密碼方式登陸微博的實(shí)例
這篇文章主要介紹了Java使用新浪微博API通過(guò)賬號(hào)密碼方式登陸微博的實(shí)例,一般來(lái)說(shuō)第三方App都是采用OAuth授權(quán)認(rèn)證然后跳轉(zhuǎn)之類的方法,而本文所介紹的賬號(hào)方式則更具有自由度,需要的朋友可以參考下2016-02-02
Spring定時(shí)任務(wù)實(shí)現(xiàn)與配置(一)
這篇文章主要為大家詳細(xì)介紹了Spring定時(shí)任務(wù)的實(shí)現(xiàn)與配置第一篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
java并發(fā)編程專題(八)----(JUC)實(shí)例講解CountDownLatch
這篇文章主要介紹了java CountDownLatch的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07
SpringBoot Aop 詳解和多種使用場(chǎng)景解析
aop面向切面編程,是編程中一個(gè)很重要的思想本篇文章主要介紹的是SpringBoot切面Aop的使用和案例,對(duì)SpringBoot Aop相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧2021-08-08
關(guān)于BindingResult的使用總結(jié)及注意事項(xiàng)
這篇文章主要介紹了關(guān)于BindingResult的使用總結(jié)及注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12

