Генератор JSON в Java

Ввод JSON

1

Сгенерированный Java

Configuration

Можно выбрать и Jackson, и Lombok

Введите JSON, чтобы сгенерировать Java‑классы

POJO, Lombok и Jackson‑аннотации

Как конвертировать JSON в Java – пошаговое руководство

Используйте этот генератор JSON to Java для создания Java POJO из образцов JSON для приложений, служб Spring Boot и интеграции JVM.

  1. Шаг 1. Вставьте образец JSON.

    • Вставьте типичный объект или массив JSON в левый редактор.
    • Включите вложенные объекты, массивы и поля, допускающие значение NULL, чтобы типы выводились правильно.
    • Используйте Import для загрузки JSON из файла, URL-адреса или образца данных.
  2. Шаг 2. Выберите параметры Java POJO.

    • Установите Class Name и Package Name в соответствии со структурой вашего проекта.
    • Включите аннотации Jackson, если вам нужны явные сопоставления JSON.
    • Включите Lombok, если вы хотите сократить количество шаблонов (геттеров/сеттеров/конструкторов).
  3. Шаг 3. Просмотрите сгенерированный код.

    • Проверьте имена полей, типы и способ моделирования массивов/объектов.
    • Настройте такие параметры, как Root Type Name, обработку значений NULL и платформы, если они доступны.
    • Если поле выведено неправильно, измените образец JSON и выполните его повторное создание.
  4. Шаг 4. Используйте POJO в Java

    • Скопируйте сгенерированные классы в исходную папку.
    • Десериализуйте JSON с помощью Jackson (или выбранной вами библиотеки) в корневой тип.
    • Добавьте аннотации проверки (например, проверку компонентов), если вам нужны строгие проверки ввода.
  5. Шаг 5 – Скопируйте или загрузите

    • Скопируйте выходные данные в свой проект или загрузите их в виде файла.
    • Запустите форматтер/линтер в соответствии со стилем вашего кода.
    • Добавьте библиотеки синтаксического анализа/сериализации JSON, если они требуются для вашего языка.

Советы

  • Используйте @JsonProperty, если ключи JSON не соответствуют именам Java.
  • Предпочитайте Instant/OffsetDateTime только в том случае, если ваш формат метки времени стабилен.
  • Держите DTO отдельно от объектов персистентности, чтобы избежать связи.
Пример вывода (упрощенный)
// Ввод JSON
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

// Generated Java POJOs (simplified)
public class Metadata {
  private String plan;
  public String getPlan() { return plan; }
  public void setPlan(String plan) { this.plan = plan; }
}

public class Root {
  private int id;
  private String name;
  private String email;
  private boolean active;
  private java.util.List<String> roles;
  private Metadata metadata;
  private String createdAt;
  private double score;
  private Object notes;
}

Сопутствующие инструменты JSON и Java

Узнайте больше об инструментах JSON и схемы, которые отлично работают вместе с генератором JSON в Java.

Часто задаваемые вопросы

Какие возможности Java поддерживаются?

Генератор создаёт Java‑классы с конструкторами и getters/setters, поддерживает Jackson‑аннотации для JSON‑сериализации и Lombok для уменьшения boilerplate, следуя стандартным Java‑конвенциям.

Можно ли генерировать классы, совместимые с Lombok?

Да! Выберите «Lombok», чтобы получить классы с аннотациями @Data, @AllArgsConstructor и @NoArgsConstructor и избежать boilerplate‑кода.

Как работает интеграция Jackson?

При выборе Jackson генератор добавляет аннотации @JsonProperty к полям для корректной сериализации/десериализации и поддержки кастомных имён.

Что с пакетной структурой?

Вы можете указать свой package name. Генератор добавит корректную package‑декларацию в начало файла.

Генератор JSON в Java | JSONSwiss