如何使用GSON庫將Java物件轉換為JSON?
JSON或JavaScript物件表示法是一種輕量級的基於文字的開放標準,旨在用於人類可讀的資料交換。JSON使用的約定為程式設計師所熟知,包括C、C++、Java、Python、Perl等。
有幾個Java庫可用於處理JSON物件。Google Gson是一個簡單的基於Java的庫,用於將Java物件序列化為JSON,反之亦然。它是由Google開發的一個開源庫。
將Java物件轉換為JSON
Google的Gson庫提供了一個與庫名稱相同的類(Gson),它是該庫的主要類。
此類提供了一個名為**toJson()**的方法,此方法有幾個變體,其中一個變體接受一個Java物件並將其轉換為JSON物件並返回它。
因此,要使用GSON庫將Java物件轉換為JSON字串,請執行以下操作:
將以下maven依賴項新增到您的pom.xml檔案中。
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version> </dependency>
建立一個具有私有變數和setter/getter方法的javabean/POJO物件。
建立另一個類(確保POJO類可供其使用)。
在其中,建立一個POJO類的物件,使用setter方法為其設定所需的值。
例項化Gson類。
透過傳遞上面建立的POJO物件來呼叫toJson()方法。
檢索並列印獲得的JSON。
示例
import com.google.gson.Gson;
class Student {
private int id;
private String name;
private int age;
private long phone;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public long getPhone() {
return phone;
}
public void setPhone(long phone) {
this.phone = phone;
}
}
public class ObjectTOString {
public static void main(String args[]) {
Student std = new Student();
std.setId(001);
std.setName("Krishna");
std.setAge(30);
std.setPhone(9848022338L);
//Creating the Gson object
Gson gSon = new Gson();
String jsonString = gSon.toJson(std);
System.out.println(jsonString);
}
}輸出
{"id":1,"name":"Krishna","age":30,"phone":9848022338}
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP