Gson之toJson和fromJson方法的具體使用
Gson是Google的一個開源項目,可以將Java對象轉(zhuǎn)換成JSON,也可能將JSON轉(zhuǎn)換成Java對象。
Gson里最重要的對象有2個Gson 和 GsonBuilder
Gson有2個最基本的方法
- toJson() – 轉(zhuǎn)換java 對象到JSON
- fromJson() – 轉(zhuǎn)換JSON到j(luò)ava對象
引入依賴: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()方法是實現(xiàn)從java實體到Json相關(guān)對象的方法
(1)將對象轉(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()方法來實現(xiàn)從Json相關(guān)對象到j(luò)ava實體的方法
(1)將json字符串轉(zhuǎn)換為java對象
Gson gson =new Gson(); User user = new User(123,"zy"); //將對象轉(zhuǎn)為json字符串 String str = gson.toJson(user); //再由json字符串轉(zhuǎn)為java對象,通過get方法得到對象里的值 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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot?HTTP如何調(diào)用其他服務(wù)
這篇文章主要介紹了Springboot?HTTP如何調(diào)用其他服務(wù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01Spring中ApplicationContextAware的使用方法詳解
ApplicationContextAware?通過它Spring容器會自動把上下文環(huán)境對象調(diào)用ApplicationContextAware接口中的setApplicationContext方法,這篇文章主要介紹了Spring中ApplicationContextAware的作用,需要的朋友可以參考下2023-03-03mybatis之嵌套查詢和嵌套結(jié)果有哪些區(qū)別
這篇文章主要介紹了mybatis之嵌套查詢和嵌套結(jié)果有哪些區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03Mybatis實現(xiàn)關(guān)聯(lián)關(guān)系映射的方法示例
本文主要介紹了Mybatis實現(xiàn)關(guān)聯(lián)關(guān)系映射的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07