Skip to content

8)библиотека gson

github.com/google/gson https://github.com/google/gson/blob/main/UserGuide.md

Gson — это библиотека от Google для работы с JSON (JavaScript Object Notation) в Java. Она позволяет легко сериализовать Java-объекты в JSON и десериализовать JSON обратно в Java-объекты. Gson полезен для работы с API, хранения данных и обмена информацией между клиентом и сервером. Основные возможности Gson:

Сериализация: Преобразование Java-объектов в JSON-строки.
Десериализация: Преобразование JSON-строк обратно в Java-объекты.
Поддержка сложных объектов: Gson может работать с коллекциями, вложенными объектами и даже с полями, которые могут быть null.
Настройка: Gson позволяет настраивать процесс сериализации и десериализации, например, игнорировать определенные поля или изменять имена полей.

Установка

Чтобы использовать Gson, добавьте зависимость в ваш проект. Если вы используете Maven, добавьте следующий код в ваш pom.xml:

xml

com.google.code.gson gson 2.10.1

Если вы используете Gradle, добавьте в ваш build.gradle:

groovy

implementation 'com.google.code.gson:gson:2.10.1' // проверьте на сайте для актуальной версии

Пример использования

Рассмотрим простой пример, где мы создадим класс Person, сериализуем его в JSON и затем десериализуем обратно.

import com.google.gson.Gson;

class Person {
    private String name;
    private int age;

    // Конструктор
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Геттеры
    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

public class GsonExample {
    public static void main(String[] args) {
        Gson gson = new Gson();

        // Создание объекта Person
        Person person = new Person("Alice", 30);

        // Сериализация объекта в JSON
        String json = gson.toJson(person);
        System.out.println("Сериализованный JSON: " + json);

        // Десериализация JSON обратно в объект Person
        Person deserializedPerson = gson.fromJson(json, Person.class);
        System.out.println("Десериализованный объект: " + deserializedPerson.getName() + ", " + deserializedPerson.getAge() + " лет");
    }
}

Вывод программы

Code

Сериализованный JSON: {"name":"Alice","age":30} Десериализованный объект: Alice, 30 лет

Заключение

Gson — это мощный инструмент для работы с JSON в Java, который упрощает процесс сериализации и десериализации. Он широко используется в приложениях, где необходимо взаимодействие с веб-сервисами и API, а также для хранения и передачи данных.

пример

https://gitlab.com/synergy9980417/razdel2/5_8#