Java基礎(chǔ)之FastJson詳解
一、fastJson將json格式字符串轉(zhuǎn)化成List集合
注:json格式字符串必須符合數(shù)組型格式如[{"a":a},{"b":b}]
場(chǎng)景一:前端向后臺(tái)傳遞數(shù)組格式的json字符串,如何轉(zhuǎn)化成List集合
List<AccountBean> readJson2List =JSON.parseArray(json, AccountBean.class)注意這里是Bean.class而不是List.class
@Test public void readJson2ListBean() { String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]"; List<AccountBean> readJson2List =JSON.parseArray(json, AccountBean.class); //輸出測(cè)試 JsonUtils.beanToJson(readJson2List); }
場(chǎng)景二:前端向后臺(tái)傳遞數(shù)組格式的json字符串,如何轉(zhuǎn)化成List<HashMap<String,Object>>集合
@Test public void readJson2ListMap() { String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]"; List<HashMap> readJson2List =JSON.parseArray(json,HashMap.class); //輸出測(cè)試 JsonUtils.beanToJson(readJson2List); }
二、fastJson將json格式字符串轉(zhuǎn)化成對(duì)象
場(chǎng)景一:前端向后臺(tái)傳遞數(shù)組格式的json字符轉(zhuǎn)化成Bean對(duì)象
@Test public void readJson2Bean() { String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}"; AccountBean accountBean =JSON.parseObject(json,AccountBean.class); //輸出測(cè)試 JsonUtils.beanToJson(accountBean); }
場(chǎng)景二:前端向后臺(tái)傳遞數(shù)組格式的json字符串Map<String,Object>集合
@Test public void readJson2Map() { String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}"; HashMap<String,Object> accountBean =JSON.parseObject(json,Map.class); //輸出測(cè)試 JsonUtils.beanToJson(accountBean); }
測(cè)試:
三、FastJson將對(duì)象或集合轉(zhuǎn)化成json格式字符串
@Test public void beanAndCollectionTOJson() { AccountBean bean = new AccountBean(); bean.setAddress("china-Guangzhou"); bean.setEmail("hoojo_@126.com"); bean.setId(1); bean.setName("hoojo"); String json = JSON.toJSONString(bean); System.out.println(json); }
四、FastJson將json格式字符串轉(zhuǎn)化成json對(duì)象
@Test public void jsonStringTOJsonBean() { String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}"; JSONObject parse = (JSONObject) JSON.parse(json); String address = (String) parse.get("address"); System.out.println("輸出address=="+address); }
五、FastJson將json格式字符串轉(zhuǎn)化成json數(shù)組
@Test public void jsonString2JsonArray() { String json = "[{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"},{\"address\":\"address\",\"name\":\"haha\",\"id\":1,\"email\":\"email\"}]"; JSONArray parseArray = JSON.parseArray(json); //輸出測(cè)試 JsonUtils.beanToJson(parseArray.get(0)); }
六、FastJson將java對(duì)象轉(zhuǎn)化成json對(duì)象
@Test public void beanAndCollectionTOJsonBean() { AccountBean bean = new AccountBean(); bean.setAddress("china-Guangzhou"); bean.setEmail("hoojo_@126.com"); bean.setId(1); bean.setName("hoojo"); JSONObject json = (JSONObject) JSON.toJSON(bean); json.get("address"); System.out.println(json); }
到此這篇關(guān)于Java基礎(chǔ)之FastJson詳解的文章就介紹到這了,更多相關(guān)Java FastJson內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot的maven多模塊混淆jar包的實(shí)現(xiàn)方法
springboot可以使用proguard-maven-plugin 這個(gè)插件 在 pom.xml 中自定義proguard 的指令,本文基于 springboot + maven + proguard 的maven多模塊架構(gòu)進(jìn)行代碼混淆,需要的朋友可以參考下2024-03-03微信小程序微信登錄的實(shí)現(xiàn)方法詳解(JAVA后臺(tái))
通常我們?cè)诘卿浳⑿判〕绦虻臅r(shí)候都是通過授權(quán)登錄,下面這篇文章主要給大家介紹了關(guān)于微信小程序微信登錄的實(shí)現(xiàn)方法,文中通過實(shí)例代碼介紹的介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07深入學(xué)習(xí)java8?中的CompletableFuture
本文主要介紹了java8中的CompletableFuture,CompletableFuture實(shí)現(xiàn)了CompletionStage接口和Future接口,前者是對(duì)后者的一個(gè)擴(kuò)展,增加了異步回調(diào)、流式處理、多個(gè)Future組合處理的能力,使Java在處理多任務(wù)的協(xié)同工作時(shí)更加順暢便利,下文需要的朋友可以參考一下2022-05-05SSH框架網(wǎng)上商城項(xiàng)目第25戰(zhàn)之使用java email給用戶發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了SSH框架網(wǎng)上商城項(xiàng)目第25戰(zhàn)之使用java email給用戶發(fā)送郵件,感興趣的小伙伴們可以參考一下2016-06-06Java面向?qū)ο蠡A(chǔ)知識(shí)之?dāng)?shù)組和鏈表
這篇文章主要介紹了Java面向?qū)ο蟮闹當(dāng)?shù)組和鏈表,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下2021-11-11Java實(shí)現(xiàn)AES加密算法的簡(jiǎn)單示例分享
這篇文章主要介紹了Java實(shí)現(xiàn)AES加密算法的簡(jiǎn)單示例分享,AES算法是基于對(duì)密碼值的置換和替代,需要的朋友可以參考下2016-04-04