Рубрики
Без рубрики

Использование API-интерфейсов REST в приложениях Java

Техническая статья, в которой описывается использование API REST в приложениях, созданных с помощью Spring Boot – фреймворка на базе Java. Помечен как java, spring boot, api, перезагрузка.

Работа с API REST и обработка ответов от них в Java может быть сложной задачей для разработчиков, которые не очень хорошо знакомы с языком. В этом уроке мы проясним процесс, лежащий в основе анализа ответов API в Java. Мы будем работать с Spring — фреймворк для создания Java-приложений.

Инструменты, которые вам понадобятся

Java Development Kit (JDK) : Среда разработки программного обеспечения, используемая для разработки приложений Java. (На момент написания статьи JDK 8 наиболее совместим с этим руководством).

Maven : Инструмент автоматизации сборки, используемый в проектах Java. (На момент написания этой статьи версия 3.2 наиболее совместима с этим руководством).

Инициализация пружины : Приложение, которое создает базовую структуру проекта Spring.

Инициализация Java-приложения с помощью Spring

Первый шаг к началу работы – начать новый проект с Spring. Вы можете сделать это, перейдя в веб-приложение Spring Initializers и запустив новый проект, используя конфигурации, указанные ниже:

# Project - Maven Project
# Language - Java
# Spring Boot Version - 2.4.9

# Project Metadata
# Group - com.example
# Artifact - restapi
# Name - restapi
# Description - A demo project to showcase REST APIs
# Package name - com.example.restapi
# Packaging - JAR
# Java - 8

Когда вы закончите настройку своего проекта, нажмите кнопку СОЗДАТЬ CTRL + ENTER , чтобы создать проект Spring, который можно загрузить и получить доступ к нему через вашу среду разработки. Давайте на минутку рассмотрим некоторые конфигурации, выбранные при создании этого проекта:

  • Проект: Требуется, чтобы вы выбрали один из двух инструментов сборки – Maven или Gradle
  • Язык: Требуется выбрать один из трех языков – Java, Kotlin или Groovy
  • Группа: Требуется указать имя пакета вашего проекта.
  • Артефакт: Требуется указать имя приложения вашего проекта.
  • Упаковка: Требуется указать формат упакованного файла.

Ваш загруженный проект должен иметь структуру, аналогичную приведенной ниже иллюстрации:

├── restapi
  └── .idea
  └── .mvn
  └── .src
    └── main
      └── java
        └── com.example.restapi
    └── test
  └── target
  └── gitignore
  └── HELP.md
  └── mvnw
  └── mvnw.cmd
  └── pom.xml

Определение классов для API REST

Для наших данных API мы будем использовать конечную точку из API Reloadly, которая возвращает сведения о любой стране на основе ее кода ISO . URL-адрес для доступа к этому:

https://topups.reloadly.com /страны/{код страны}

Где параметр код страны представляет код ISO страны, данные которой должны быть извлечены. Для нашего примера мы будем использовать Соединенные Штаты (США).

Когда будет получен успешный ответ, данные будут в формате JSON и будут похожи на это:

{
    "isoName": "US",
    "name": "United States",
    "currencyCode": "USD",
    "currencyName": "US Dollar",
    "currencySymbol": "$",
    "flag": "https://s3.amazonaws.com/rld-flags/us.svg",
    "callingCodes": [
        "+1"
    ]
}

Чтобы обработать эти данные в вашем приложении, вам необходимо создать класс домена, содержащий свойства и соответствующие методы получения для данных, которые вы собираетесь извлекать из API Reloadly. Имена ваших свойств должны точно совпадать с именами каждого параметра ответа в извлекаемых данных, как показано в GitHub ниже:

Извлечение ресурса REST API

Как только вы закончите создание класса, который обрабатывает данные вашего ответа, следующим шагом будет запрос к API Reloadly для извлечения данных. При создании вашего проекта Spring Initializr создает класс, названный в честь вашего проекта и используемый для запуска вашего проекта. Именно из этого класса будет сделан запрос на перезагрузку конечной точки API ly. Давайте посмотрим, как это достигается в приведенной ниже сути:

В приведенном выше примере кода мы определили следующее:

  • Класс под названием Приложение Rest Api создается. Здесь содержатся методы, которые запускают и создают сборку для нашего приложения.
  • Также создается регистратор, который регистрирует наш ответ API в консоли.
  • Аннотация компонента, которая служит основой нашего приложения. Он также создает сборку для нашего приложения.
  • RestTemplate – абстракция веб-клиента, построенная на Java API сервлетов . Он будет использоваться для отправки нашего запроса в API Reloadly.

Конечная точка Reloadly может быть разбита на:

  • https://topups.reloadly.com : Это базовый URL-адрес, по которому выполняется запрос на серверы Reloadly
  • /страны/США : Это конечная точка, откуда должны быть получены данные, US – код страны Соединенных Штатов – страны, данные которой мы собираемся просмотреть. Вы можете узнать более подробную информацию о документации Reloadly здесь

На этом этапе наша заявка должна быть завершена. Давайте запустим его, перейдя к нашему терминалу и используя команду запуска Maven:

./mvnw spring-boot:run

В приведенном ниже видеоклипе показано, как это сделать:

Резюме

Spring – отличный фреймворк для разработчиков, начинающих работу с Java, чтобы получить представление о языке. В этом уроке мы смогли пройти процесс выполнения базового вызова API с конечной точки и получить ответ. Если вам нужно просмотреть образец кода для этого, вы можете найти его здесь на GitHub.

Оригинал: “https://dev.to/fullstackmafia/consuming-rest-apis-in-java-applications-48nm”