Java基礎(chǔ)之FastJson詳解
一、fastJson將json格式字符串轉(zhuǎn)化成List集合
注:json格式字符串必須符合數(shù)組型格式如[{"a":a},{"b":b}]
場景一:前端向后臺傳遞數(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);
//輸出測試
JsonUtils.beanToJson(readJson2List);
}
場景二:前端向后臺傳遞數(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);
//輸出測試
JsonUtils.beanToJson(readJson2List);
}
二、fastJson將json格式字符串轉(zhuǎn)化成對象
場景一:前端向后臺傳遞數(shù)組格式的json字符轉(zhuǎn)化成Bean對象
@Test
public void readJson2Bean() {
String json = "{\"address\": \"address2\",\"name\":\"haha2\",\"id\":2,\"email\":\"email2\"}";
AccountBean accountBean =JSON.parseObject(json,AccountBean.class);
//輸出測試
JsonUtils.beanToJson(accountBean);
}
場景二:前端向后臺傳遞數(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);
//輸出測試
JsonUtils.beanToJson(accountBean);
}
測試:

三、FastJson將對象或集合轉(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對象
@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);
//輸出測試
JsonUtils.beanToJson(parseArray.get(0));
}

六、FastJson將java對象轉(zhuǎn)化成json對象
@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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot的maven多模塊混淆jar包的實(shí)現(xiàn)方法
springboot可以使用proguard-maven-plugin 這個插件 在 pom.xml 中自定義proguard 的指令,本文基于 springboot + maven + proguard 的maven多模塊架構(gòu)進(jìn)行代碼混淆,需要的朋友可以參考下2024-03-03
微信小程序微信登錄的實(shí)現(xiàn)方法詳解(JAVA后臺)
通常我們在登錄微信小程序的時候都是通過授權(quán)登錄,下面這篇文章主要給大家介紹了關(guān)于微信小程序微信登錄的實(shí)現(xiàn)方法,文中通過實(shí)例代碼介紹的介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07
深入學(xué)習(xí)java8?中的CompletableFuture
本文主要介紹了java8中的CompletableFuture,CompletableFuture實(shí)現(xiàn)了CompletionStage接口和Future接口,前者是對后者的一個擴(kuò)展,增加了異步回調(diào)、流式處理、多個Future組合處理的能力,使Java在處理多任務(wù)的協(xié)同工作時更加順暢便利,下文需要的朋友可以參考一下2022-05-05
SSH框架網(wǎng)上商城項目第25戰(zhàn)之使用java email給用戶發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了SSH框架網(wǎng)上商城項目第25戰(zhàn)之使用java email給用戶發(fā)送郵件,感興趣的小伙伴們可以參考一下2016-06-06
Java面向?qū)ο蠡A(chǔ)知識之?dāng)?shù)組和鏈表
這篇文章主要介紹了Java面向?qū)ο蟮闹當(dāng)?shù)組和鏈表,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下2021-11-11
Java實(shí)現(xiàn)AES加密算法的簡單示例分享
這篇文章主要介紹了Java實(shí)現(xiàn)AES加密算法的簡單示例分享,AES算法是基于對密碼值的置換和替代,需要的朋友可以參考下2016-04-04

