import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Main {
    public static void main(String[] args) {
        Connection connexion = ConnectDatabase();
        if (connexion != null) {
            DisplayResult(connexion);
            try {
                connexion.close();
            } catch (SQLException e) {
                System.out.println("Échec de la déconnexion de la base de données");
                e.printStackTrace();
            }
        }
    }

    private static Connection ConnectDatabase() {
        String url = "jdbc:mysql://localhost:3306/alimentations";
        String utilisateur = "root";
        String motDePasse = "";
        try {
            return DriverManager.getConnection(url, utilisateur, motDePasse);
        } catch (SQLException e) {
            System.out.println("Échec de la connexion à la base de données");
            e.printStackTrace();
            return null;
        }
    }

    private static void DisplayResult(Connection connexion) {
        try {
            Statement statement = connexion.createStatement();
            ResultSet resultSet = statement.executeQuery("SELECT * FROM aliments");

            while (resultSet.next()) {
                String nom = resultSet.getString("nom");
                float poids_moyen = resultSet.getFloat("poids_moyen");

                System.out.println("Nom: " + nom + ", Poids_moyen: " + poids_moyen);
            }
        } catch (SQLException e) {
            System.out.println("Une erreur est survenue lors de l'exécution de la requête SQL.");
            e.printStackTrace();
        }
    }
}

Dans ce code :

  • La méthode ConnectDatabase établit la connexion à la base de données et retourne l'objet Connection. En cas d'échec, elle retourne null et affiche un message d'erreur.
  • La méthode DisplayResult prend un objet Connection en paramètre, exécute la requête SQL, et affiche les résultats. Elle gère également les exceptions liées à l'exécution de la requête.
  • Dans la méthode main, après l'appel de DisplayResult, la connexion est fermée dans un bloc try-catch pour gérer les exceptions potentielles lors de la fermeture de la connexion.
Modifié le: lundi 13 novembre 2023, 07:59