Maison >Java >javaDidacticiel >Comment appeler une API tierce dans Spring Boot

Comment appeler une API tierce dans Spring Boot

Patricia Arquette
Patricia Arquetteoriginal
2025-01-23 22:04:15939parcourir

Ce didacticiel Spring Boot montre comment utiliser une API tierce et afficher les résultats dans une vue Thymeleaf. Affinons le texte et le code pour plus de clarté et de précision.

Texte révisé :

Aperçu

Ce tutoriel vous guide dans l'intégration d'une API tierce dans une application Spring Boot. Nous ferons une requête GET à https://api.sampleapis.com/coffee/hot, puis présenterons élégamment les données de réponse dans un modèle Thymeleaf affiché dans votre navigateur.

Prérequis

Une connaissance de base des éléments suivants est supposée :

  • Java
  • Botte de printemps
  • Feuille de thym
  • Maven (ou Gradle) pour la gestion des dépendances

Processus de développement

1. Configuration du projet

Utilisez Spring Initializr (https://www.php.cn/link/bafd1b75c5f0ceb81050a853c9faa911) pour créer un nouveau projet Spring Boot. Incluez les dépendances suivantes :

How to call third-party API in Spring Boot

Extrayez l'archive téléchargée et importez le projet dans votre IDE (par exemple, IntelliJ IDEA).

2. Créer le CoffeeModèle

Créez un POJO (Plain Old Java Object) pour représenter les données de café reçues de l'API. Cela simplifie la gestion des données.

<code class="language-java">package com.myproject.apidemo;

public class Coffee {
    public String title;
    public String description;

    // Constructors, getters, and setters (omitted for brevity)
    @Override
    public String toString() {
        return "Coffee{" +
                "title='" + title + '\'' +
                ", description='" + description + '\'' +
                '}';
    }
}</code>

3. Créez le CoffeeController

Ce contrôleur gère l'appel API et le traitement des données.

<code class="language-java">package com.myproject.apidemo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.reactive.function.client.WebClient;
import org.springframework.core.ParameterizedTypeReference;
import java.util.List;

@Controller
public class CoffeeController {

    @GetMapping("/coffee")
    public String getCoffee(Model model) {
        String url = "https://api.sampleapis.com/coffee/hot";

        WebClient webClient = WebClient.create();

        List<Coffee> coffeeList = webClient.get()
                .uri(url)
                .retrieve()
                .bodyToMono(new ParameterizedTypeReference<List<Coffee>>() {})
                .block();


        model.addAttribute("coffeeList", coffeeList);
        return "coffee";
    }
}</code>

Remarque : La gestion des erreurs (par exemple, en utilisant onErrorResume avec WebClient) doit être ajoutée pour le code prêt pour la production. La méthode block() est utilisée ici par souci de simplicité mais doit être remplacée par des techniques de programmation réactive pour de meilleures performances dans une application du monde réel.

4. Créer la vue Thymeleaf (coffee.html)

Créez un modèle Thymeleaf pour afficher les données du café. Placez ce fichier dans src/main/resources/templates/coffee.html.

<code class="language-html"><!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Coffee List</title>
</head>
<body>
    <h3>Coffee List</h3>
    <table>
        <thead>
            <tr>
                <th>Title</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            <tr th:each="coffee : ${coffeeList}">
                <td th:text="${coffee.title}"></td>
                <td th:text="${coffee.description}"></td>
            </tr>
        </tbody>
    </table>
</body>
</html></code>

5. Exécutez l'application

Démarrez votre application Spring Boot. Vous devriez maintenant pouvoir accéder à la liste des cafés sur http://localhost:8080/coffee (ou sur l'URL de base de votre application).

Cette version révisée fournit une représentation plus complète et plus précise du processus, y compris des détails cruciaux comme la Coffee classe de modèle et un formatage de code amélioré. N'oubliez pas de gérer les erreurs potentielles dans un environnement de production.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn