1. Обзор
В этом руководстве мы рассмотрим самые распространенные исключения Джексона — JsonMappingException
и UnrecognizedPropertyException
.
Наконец, мы кратко обсудим ошибки Джексона «Нет такого метода».
JSON (нотация объектов JavaScript) — это упрощенный формат обмена данными, и мы чаще всего используем его для связи клиент-сервер. Его легко читать и писать, и он не зависит от языка. Значение JSON может быть другим объектом
JSON , массивом
, числом
, строкой
, логическим значением
(true/false) или null
.
В этом руководстве мы увидим, как создавать, обрабатывать и анализировать JSON с помощью одной из доступных библиотек обработки JSON — библиотеки JSON-Java , также известной как org.json
.
Схема JSON
— это декларативный язык для проверки формата и структуры объекта JSON
. Это позволяет нам указать количество специальных примитивов, чтобы точно описать, как будет выглядеть действительный объект JSON .
Спецификация схемы JSON
разделена на три части:
Нашим службам часто приходится взаимодействовать с другими службами REST для получения информации.
В Spring мы можем использовать RestTemplate
для выполнения синхронных HTTP-запросов. Данные обычно возвращаются в формате JSON, и RestTemplate
может преобразовать их для нас.
В этом руководстве мы рассмотрим, как мы можем преобразовать массив JSON в три разные структуры объектов в Java :
массив объектов
, массив POJO
и список POJO
.
``
Gson — это библиотека Java, которая позволяет нам преобразовывать объекты Java в представление JSON. Мы также можем использовать его наоборот, чтобы преобразовать строку JSON в эквивалентный объект Java.
В этом кратком руководстве мы узнаем, как сохранять различные типы данных Java в виде JSON в файле.
Прежде всего, нам нужно добавить зависимость Gson в pom.xml
. Это доступно в Maven Central :
При написании автоматических тестов для программного обеспечения, использующего JSON, нам часто требуется сравнить данные JSON с некоторым ожидаемым значением.
В некоторых случаях мы можем обрабатывать фактический и ожидаемый JSON как строки и выполнять сравнение строк, но это имеет много ограничений.
В этом руководстве мы рассмотрим, как писать утверждения и сравнивать значения JSON с помощью ModelAssert . Мы увидим, как создавать утверждения для отдельных значений в документе JSON и как сравнивать документы. Мы также рассмотрим, как обрабатывать поля, точные значения которых невозможно предсказать, например даты или идентификаторы GUID.
В этом руководстве показано, как десериализовать массив JSON в массив или коллекцию Java с помощью Jackson 2 .
Если вы хотите копнуть глубже и узнать о других интересных вещах, которые вы можете делать с Jackson 2, — перейдите к основному руководству по Jackson .
Джексон может легко десериализоваться в массив Java:
Одним из преимуществ XML является доступность обработки, включая XPath, которая определена как стандарт W3C . Для JSON появился аналогичный инструмент под названием JSONPath.
В этом руководстве вы познакомитесь с Jayway JsonPath , Java-реализацией спецификации JSONPath . В нем описываются установка, синтаксис, распространенные API и демонстрация вариантов использования.
Наши службы часто взаимодействуют с другими службами REST для получения информации.
Начиная с Spring 5, мы можем использовать WebClient
для выполнения этих запросов реактивным, неблокирующим способом. WebClient
является частью нового WebFlux
Framework, построенного поверх Project Reactor
. Он имеет свободный, реактивный API и использует протокол HTTP в своей базовой реализации.
Когда мы делаем веб-запрос, данные часто возвращаются в формате JSON. WebClient
может преобразовать это для нас.
В этой статье мы узнаем, как преобразовать массив JSON в массив объектов
Java , массив
POJO
и список
POJO с помощью WebClient
. [](/lessons/b/-java-pojo-class)
``