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)文章
Spring Boot CORS 配置方法允許跨域請求的最佳實踐方案
跨域請求在現(xiàn)代Web開發(fā)中非常重要,特別是在涉及多個前端和后端服務(wù)時,本文詳細介紹了跨域請求的背景、重要性以及如何解決跨域問題,通過SpringBoot框架的CORS配置,可以有效地處理跨域請求,確保數(shù)據(jù)傳輸?shù)陌踩院陀脩趔w驗,感興趣的朋友跟隨小編一起看看吧2024-11-11
SpringMVC中的@RequestMapping注解的使用詳細教程
@RequestMapping注解的作用就是將請求和處理請求的控制器方法關(guān)聯(lián)起來,建立映射關(guān)系,本文主要來和大家詳細講講它的具體使用,感興趣的可以了解一下2023-07-07
springboot集成camunda的實現(xiàn)示例
本文主要介紹了springboot集成camunda的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10
基于SpringBoot后端導(dǎo)出Excel文件的操作方法
這篇文章給大家介紹了基于SpringBoot后端導(dǎo)出Excel文件的操作方法,文中通過代碼示例給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-02-02
Springboot整合Redis實現(xiàn)超賣問題還原和流程分析(分布式鎖)
最近在研究超賣的項目,寫一段簡單正常的超賣邏輯代碼,多個用戶同時操作同一段數(shù)據(jù)出現(xiàn)問題,糾結(jié)該如何處理呢?下面小編給大家?guī)砹薙pringboot整合Redis實現(xiàn)超賣問題還原和流程分析,感興趣的朋友一起看看吧2021-10-10

