Gson - Класс
Gson - это основной класс акторов библиотеки Google Gson. Он предоставляет функции для преобразования объектов Java в соответствующие конструкции JSON и наоборот. Gson сначала создается с помощью GsonBuilder, а затем для чтения / записи конструкций JSON используются методы toJson (Object) или fromJson (String, Class).
Объявление класса
Ниже приводится декларация для com.google.gson.Gson класс -
public final class Gson
extends Object
Конструкторы
Старший Нет | Конструктор и описание |
---|---|
1 |
Gson() Создает объект Gson с конфигурацией по умолчанию. |
Методы класса
Старший Нет | Метод и описание |
---|---|
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) Записывает эквивалентный JSON для дерева JsonElements. |
13 |
void toJson(JsonElement jsonElement, JsonWriter writer) Записывает JSON для jsonElement в писатель. |
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) Записывает JSON-представление src типа typeOfSrc в писатель. |
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
}