- Gson 教程
- Gson - 主頁
- Gson - 概述
- Gson - 環境設定
- Gson - 第一個應用程式
- Gson - 類
- Gson - 物件序列化
- Gson - 資料繫結
- Gson - 物件資料繫結
- Gson - 樹型模型
- Gson - 流式處理
- Gson - 序列化示例
- Gson - 序列化內部類
- Gson - 自定義型別介面卡
- Gson - 空物件支援
- Gson - 版本控制支援
- 從序列化中排除欄位
- Gson 實用資源
- Gson - 快速指南
- Gson - 實用資源
- Gson - 討論
Gson - 物件序列化
讓我們將一個 Java 物件序列化為 Json 檔案,然後讀取該 Json 檔案以檢索物件。在本示例中,我們建立了 Student 類。我們將建立一個 student.json 檔案,其中將包含 Student 物件的 json 表示形式。
示例
在 C:\>GSON_WORKSPACE 中建立名為 GsonTester 的 Java 類檔案。
檔案 - GsonTester.java
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class GsonTester {
public static void main(String args[]) {
GsonTester tester = new GsonTester();
try {
Student student = new Student();
student.setAge(10);
student.setName("Mahesh");
tester.writeJSON(student);
Student student1 = tester.readJSON();
System.out.println(student1);
}
catch(FileNotFoundException e) {
e.printStackTrace();
}
catch(IOException e) {
e.printStackTrace();
}
}
private void writeJSON(Student student) throws IOException {
GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
FileWriter writer = new FileWriter("student.json");
writer.write(gson.toJson(student));
writer.close();
}
private Student readJSON() throws FileNotFoundException {
GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
BufferedReader bufferedReader = new BufferedReader(
new FileReader("student.json"));
Student student = gson.fromJson(bufferedReader, Student.class);
return student;
}
}
class Student {
private String name;
private int age;
public Student(){}
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 String toString() {
return "Student [ name: "+name+", age: "+ age+ " ]";
}
}
驗證結果
使用以下 javac 編譯器編譯類 −
C:\GSON_WORKSPACE>javac GsonTester.java
現在執行 GsonTester 檢視結果 −
C:\GSON_WORKSPACE>java GsonTester
驗證輸出
Student [ name: Mahesh, age: 10 ]
廣告