如何排除Gson序列化中的Java欄位?


Gson 庫提供了一種簡單的方法,可以使用transient 修飾符從序列化中排除欄位。如果我們在 Java 類中將欄位設為瞬態,則 Gson 可以在序列化 反序列化忽略該欄位。

示例

import com.google.gson.*;
public class GsonTransientFieldTest {
   public static void main(String[] args) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      Person p = new Person("Raja", "Ramesh", 28, 35000.00);
      String jsonStr = gson.toJson(p);
      System.out.println(jsonStr);
   }
}
//Person class
class Person {
   private String firstName;
   private transient String lastName;
   private int age;
   private transient double salary;
   public Person(String firstName, String lastName, int age, double salary) {
      super();
      this.firstName = firstName;
      this.lastName = lastName;
      this.age = age;
      this.salary = salary;
   }
}

輸出

{
 "firstName": "Raja",
 "age": 28
}

更新於:2020-07-06

549 次瀏覽

啟動你的 職業

完成課程後獲得認證

開始
廣告