Gson是Google為Java開(kāi)發(fā)者提供的一個(gè)開(kāi)源的JSON解析框架。它可以將JSON數(shù)據(jù)轉(zhuǎn)化為Java的對(duì)象,也可以將Java對(duì)象轉(zhuǎn)化為JSON格式的數(shù)據(jù)。Gson是一個(gè)功能非常強(qiáng)大且易于使用的JSON解析器。以下是Gson將JSON數(shù)據(jù)轉(zhuǎn)化為對(duì)象的代碼示例。
// 定義一個(gè)Java對(duì)象 public class User { public String name; public int age; public String gender; } // 定義JSON字符串 String jsonStr = "{\"name\":\"Tom\",\"age\":20,\"gender\":\"Male\"}"; // 將JSON字符串轉(zhuǎn)化為Java對(duì)象 Gson gson = new Gson(); User user = gson.fromJson(jsonStr, User.class);
在代碼示例中,首先定義了一個(gè)Java對(duì)象
Gson的fromJson方法的第一個(gè)參數(shù)是待轉(zhuǎn)化的JSON字符串,第二個(gè)參數(shù)是要將JSON字符串轉(zhuǎn)化為的Java對(duì)象的類(lèi)。由于Gson是根據(jù)Java對(duì)象的屬性名來(lái)匹配JSON數(shù)據(jù),所以在Java對(duì)象中定義的屬性名和JSON數(shù)據(jù)中的屬性名必須要相同,才能將JSON數(shù)據(jù)轉(zhuǎn)化為Java對(duì)象。
Gson還提供了將Java對(duì)象轉(zhuǎn)化為JSON字符串的方法,方法名為toJson。下面是將Java對(duì)象轉(zhuǎn)化為JSON字符串的代碼示例。
// 定義一個(gè)Java對(duì)象 public class User { public String name; public int age; public String gender; } // 定義一個(gè)Java對(duì)象 User user = new User(); user.name = "Tom"; user.age = 20; user.gender = "Male"; // 將Java對(duì)象轉(zhuǎn)化為JSON字符串 Gson gson = new Gson(); String jsonStr = gson.toJson(user);
在代碼示例中,首先同樣定義了一個(gè)Java對(duì)象
通過(guò)以上代碼示例,可以看出Gson非常方便易用,能夠很好地將JSON數(shù)據(jù)轉(zhuǎn)化為Java對(duì)象,并且將Java對(duì)象轉(zhuǎn)化為JSON字符串。