Статьи

Простое сопоставление JSON с объектами Java с помощью Jackson

Отображение JSON в объекты Java стало намного проще с Джексоном.

Вступление

Jackson — это очень популярная и эффективная библиотека на основе Java, используемая для преобразования JSON в объекты Java и наоборот. В этой статье я покажу, как легко использовать Джексона для получения данных в ответе JSON, полученного от REST API, и сохранить их в CSV-файл.

Я буду получать финансовые данные от Elektron Data Platform (EDP), которая предоставляет доступ к различным наборам данных Refinitiv и будет использовать исторические цены для образца.

Вам также может понравиться: Обработка JSON с Джексоном

Предварительно

1. Учетные данные для доступа EDP (имя пользователя, пароль и clientId), которые могут извлекать исторические данные о ценах. Вы можете связаться с представителями Refinitiv, чтобы получить имя пользователя и пароль и использовать их для создания clientId в Генераторе ключей приложения .

2.  EDPTokenВспомогательный класс используется для получения токена доступа, который требуется перед любыми запросами данных. Вы можете просто следовать этой статье:  Простой Получение токена от EDP Gateway на Java .

Как это работает

Обзор процесса представляет собой следующую диаграмму:

Во-первых, вам нужен класс Java (верхний серый прямоугольник на диаграмме), который соответствует формату ответа данных JSON от EDP. Шаги по созданию Java-класса описаны в разделе Создание Java-класса, который соответствует JSON Response из EDP ниже.

Затем вы можете использовать Джексона   ObjectMapperдля чтения класса Java и ответа JSON, полученного от REST API, для создания объекта Java, представляющего проанализированный JSON. Затем вы можете вызывать методы объекта Java, чтобы получить любые значения проанализированного JSON.

В моем приложении я получу значения ключа данных, имени и типа ключа заголовка, вызвав методы  HistoricalPricingEvent объекта. Отрезанный исходный код показан ниже:


Джава