Gson-class

提供:Dev Guides
移動先:案内検索

Gson-クラス

Gsonは、Google Gsonライブラリの主要なアクタークラスです。 Javaオブジェクトを一致するJSONコンストラクトに、またはその逆に変換する機能を提供します。 Gsonは最初にGsonBuilderを使用して構築され、次にtoJson(Object)またはfromJson(String、Class)メソッドがJSON構造の読み取り/書き込みに使用されます。

クラス宣言

以下は com.google.gson.Gson クラスの宣言です-

public final class Gson
   extends Object

コンストラクタ

Sr.No Constructor & Description
1

Gson()

デフォルト設定でGsonオブジェクトを構築します。

クラスメソッド

Sr.No Method & Description
1

<T> T fromJson(JsonElement json, Class<T> classOfT)

このメソッドは、指定された解析ツリーから読み取られたJsonを指定されたタイプのオブジェクトにデシリアライズします。

2

<T> T fromJson(JsonElement json, Type typeOfT)

このメソッドは、指定された解析ツリーから読み取られたJsonを指定されたタイプのオブジェクトにデシリアライズします。

3

<T> T fromJson(JsonReader reader, Type typeOfT)

リーダーから次のJSON値を読み取り、それをtypeOfT型のオブジェクトに変換します。

4

<T> T fromJson(Reader json, Class<T> classOfT)

このメソッドは、指定されたリーダーから読み取られたJsonを指定されたクラスのオブジェクトにデシリアライズします。

5

<T> T fromJson(Reader json, Type typeOfT)

このメソッドは、指定されたリーダーから読み取られたJsonを指定されたタイプのオブジェクトにデシリアライズします。

6

<T> T fromJson(String json, Class<T> classOfT)

このメソッドは、指定されたJsonを指定されたクラスのオブジェクトにデシリアライズします。

7

<T> T fromJson(String json, Type typeOfT)

このメソッドは、指定されたJsonを指定されたタイプのオブジェクトにデシリアライズします。

8

<T> TypeAdapter<T> getAdapter(Class<T> type)

型の型アダプターを返します。

9

<T> TypeAdapter<T> getAdapter(TypeToken<T> type)

型の型アダプターを返します。

10

<T> TypeAdapter<T> getDelegateAdapter(TypeAdapterFactory skipPast, TypeToken<T> type)

このメソッドは、指定された型の代替型アダプターを取得するために使用されます。

11

String toJson(JsonElement jsonElement)

JsonElementsのツリーを同等のJSON表現に変換します。

12

void toJson(JsonElement jsonElement, Appendable writer)

JsonElementsのツリーに相当するJSONを書き出します。

13

void toJson(JsonElement jsonElement, JsonWriter writer)

jsonElementのJSONをライターに書き込みます。

14

String toJson(Object src)

このメソッドは、指定されたオブジェクトを同等のJSON表現にシリアル化します。

15

void toJson(Object src, Appendable writer)

このメソッドは、指定されたオブジェクトを同等のJSON表現にシリアル化します。

16

String toJson(Object src, Type typeOfSrc)

このメソッドは、ジェネリック型のオブジェクトを含む指定されたオブジェクトを、同等のJson表現にシリアル化します。

17

void toJson(Object src, Type typeOfSrc, Appendable writer)

このメソッドは、ジェネリック型のオブジェクトを含む指定されたオブジェクトを、同等のJson表現にシリアル化します。

18

void toJson(Object src, Type typeOfSrc, JsonWriter writer)

typeOfSrc型のsrcのJSON表現をライターに書き込みます。

19

JsonElement toJsonTree(Object src)

このメソッドは、指定されたオブジェクトを、JsonElementsのツリーと同等の表現にシリアル化します。

20

JsonElement toJsonTree(Object src, Type typeOfSrc)

このメソッドは、ジェネリック型のオブジェクトを含む指定されたオブジェクトを、JsonElementsのツリーと同等の表現にシリアル化します。

21 String toString()

継承されたメソッド

このクラスは、次のクラスからメソッドを継承します-

  • java.lang.Object

任意のエディターを使用して次のJavaプログラムを作成し、たとえばC:/> GSON_WORKSPACEに保存します

*_File-GsonTester.java_*
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class GsonTester {
   public static void main(String[] args) {
      String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";

      GsonBuilder builder = new GsonBuilder();
      builder.setPrettyPrinting();

      Gson gson = builder.create();
      Student student = gson.fromJson(jsonString, Student.class);
      System.out.println(student);

      jsonString = gson.toJson(student);
      System.out.println(jsonString);
   }
}

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: 21 ]
{
   "name" : "Mahesh",
   "age" : 21
}