Pour modifier la méthode DisplayResult afin qu'elle accepte une requête SQL en argument, vous devez simplement ajouter un paramètre de type String à la méthode. Ce paramètre représentera la requête SQL que vous souhaitez exécuter.

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();
        String sqlQuery = "SELECT * FROM aliments";

        if (connexion != null) {
            DisplayResult(connexion, sqlQuery);
            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, String sqlQuery) {
        try {
            Statement statement = connexion.createStatement();
            ResultSet resultSet = statement.executeQuery(sqlQuery);

            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();
        }
    }
}
  • La méthode DisplayResult a maintenant deux paramètres : Connection connexion et String sqlQuery. La requête SQL est passée en tant que chaîne de caractères lors de l'appel de la méthode.
  • Dans la méthode main, la requête SQL est définie dans une variable sqlQuery et passée à DisplayResult en même temps que l'objet Connection.
Modifié le: lundi 13 novembre 2023, 08:00