Gson之toJson和fromJson方法的具體使用
Gson是Google的一個(gè)開源項(xiàng)目,可以將Java對(duì)象轉(zhuǎn)換成JSON,也可能將JSON轉(zhuǎn)換成Java對(duì)象。
Gson里最重要的對(duì)象有2個(gè)Gson 和 GsonBuilder
Gson有2個(gè)最基本的方法
- toJson() – 轉(zhuǎn)換java 對(duì)象到JSON
- fromJson() – 轉(zhuǎn)換JSON到j(luò)ava對(duì)象
引入依賴:pom.xml文件中加入
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version> </dependency>
1.toJson()方法是實(shí)現(xiàn)從java實(shí)體到Json相關(guān)對(duì)象的方法
(1)將對(duì)象轉(zhuǎn)換為json字符串
Gson gson =new Gson(); User user = new User(123,"zy"); String str = gson.toJson(user); System.out.println(str);
輸出結(jié)果為
(2)將map集合轉(zhuǎn)變?yōu)閖son字符串
Gson gson1 =new Gson(); Map<Integer, String> map= new HashMap<Integer, String>(); map.put(11, "zy"); map.put(12, "zz"); String str1 = gson1.toJson(map); System.out.println(str1);
輸出結(jié)果為
2.fromJson()方法來實(shí)現(xiàn)從Json相關(guān)對(duì)象到j(luò)ava實(shí)體的方法
(1)將json字符串轉(zhuǎn)換為java對(duì)象
Gson gson =new Gson(); User user = new User(123,"zy"); //將對(duì)象轉(zhuǎn)為json字符串 String str = gson.toJson(user); //再由json字符串轉(zhuǎn)為java對(duì)象,通過get方法得到對(duì)象里的值 User fromJson = gson.fromJson(str, User.class); System.out.println(fromJson.getAge()+"......"+fromJson.getName());
輸出結(jié)果為
(2)將json字符串轉(zhuǎn)換為map集合
Gson gson =new Gson(); Map<Integer, String> map= new HashMap<Integer, String>(); map.put(11, "zy"); map.put(12, "zz"); //將map集合轉(zhuǎn)換為json字符串 String str = gson.toJson(map); //將json字符串轉(zhuǎn)換為map集合 Type type = new TypeToken<Map<Integer, String>>() { }.getType(); Map<Integer, String> map1 = gson.fromJson(str, type); //遍歷map集合 for (Integer key : map1.keySet()) { System.out.println("key="+key+"\tvalue="+map1.get(key)); }
輸出結(jié)果為
到此這篇關(guān)于Gson之toJson和fromJson方法的具體使用的文章就介紹到這了,更多相關(guān)Gson toJson和fromJson方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot?HTTP如何調(diào)用其他服務(wù)
這篇文章主要介紹了Springboot?HTTP如何調(diào)用其他服務(wù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01Java 入門圖形用戶界面設(shè)計(jì)之列表框JList
圖形界面(簡(jiǎn)稱GUI)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。與早期計(jì)算機(jī)使用的命令行界面相比,圖形界面對(duì)于用戶來說在視覺上更易于接受,本篇精講Java語(yǔ)言中關(guān)于圖形用戶界面的列表框JList2022-02-02Spring中ApplicationContextAware的使用方法詳解
ApplicationContextAware?通過它Spring容器會(huì)自動(dòng)把上下文環(huán)境對(duì)象調(diào)用ApplicationContextAware接口中的setApplicationContext方法,這篇文章主要介紹了Spring中ApplicationContextAware的作用,需要的朋友可以參考下2023-03-03mybatis之嵌套查詢和嵌套結(jié)果有哪些區(qū)別
這篇文章主要介紹了mybatis之嵌套查詢和嵌套結(jié)果有哪些區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03Mybatis實(shí)現(xiàn)關(guān)聯(lián)關(guān)系映射的方法示例
本文主要介紹了Mybatis實(shí)現(xiàn)關(guān)聯(lián)關(guān)系映射的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07淺談Springmvc中的頁(yè)面跳轉(zhuǎn)問題
這篇文章主要介紹了淺談Springmvc中的頁(yè)面跳轉(zhuǎn)問題,具有一定參考價(jià)值,需要的朋友可以了解下。2017-12-12