Pour établir une connexion à une base de données MySQL en Java, vous pouvez utiliser JDBC (Java Database Connectivity).

Installer MySQL Connector

MySQL :: Download MySQL Connector/J (Archived Versions)

 

Dans Visual Code 

Ajouter un fichier settings.json

{
    "json.schemas": [],
    "java.test.config": [
        {
            "name": "Test with AppMap",
            "vmArgs": [
                "-javaagent:${userHome}\\.appmap\\lib\\java\\appmap.jar",
                "-Dappmap.output.directory=${command:appmap.getAppmapDir}"
            ]
        },
        {
            "java.project.sourcePaths": [
                "src"
            ],
            "java.project.outputPath": "bin",
            "java.project.referencedLibraries": [
                "lib/**/*.jar"
            ]
        }
    ]
}

Dans votre projet créer le répertoire

 lib

Décompresez le fichier mysql-connector.jar contenu dans le fichier zip dans lib

 

Voici un exemple de code :

 
import java.sql.Connection;

import java.sql.DriverManager;
import java.sql.SQLException;

public class Main {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/nom_de_la_base";
        String utilisateur = "nom_utilisateur";
        String motDePasse = "mot_de_passe";
        Connection connexion = null;

        try {
            connexion = DriverManager.getConnection(url, utilisateur, motDePasse);
            System.out.println("Connexion réussie !");
        } catch (SQLException e) {
            System.out.println("Échec de la connexion à la base de données");
            e.printStackTrace();
        } finally {
            if (connexion != null) {
                try {
                    connexion.close();
                    System.out.println("Déconnexion réussie !");
                } catch (SQLException e) {
                    System.out.println("Échec de la déconnexion de la base de données");
                    e.printStackTrace();
                }
            }
        }
    }
}

Dans cet exemple, remplacez nom_de_la_basenom_utilisateur et mot_de_passe par vos propres informations. Assurez-vous également que le pilote JDBC pour MySQL est inclus dans votre chemin de classe.

Note : Il est recommandé de gérer les connexions à la base de données dans un pool de connexions pour des performances optimales et une meilleure gestion des ressources. De plus, il est préférable de ne pas stocker les informations d’identification de la base de données en texte brut dans le code pour des raisons de sécurité. Utilisez plutôt des variables d’environnement ou un gestionnaire de configuration sécurisé.

 

Créer une requête sur la base alimentations

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) {
        String url = "jdbc:mysql://localhost:3306/alimentations";
        String utilisateur = "root";
        String motDePasse = "";
        Connection connexion = null;

        try {
            connexion = DriverManager.getConnection(url, utilisateur, motDePasse);
            Statement statement = connexion.createStatement();
            ResultSet resultSet = statement.executeQuery("SELECT * FROM aliments");

            while (resultSet.next()) {
                // Supposons que votre table ait les colonnes 'nom' et 'quantite'
                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();
        } finally {
            if (connexion != null) {
                try {
                    connexion.close();
                } catch (SQLException e) {
                    System.out.println("Échec de la déconnexion de la base de données");
                    e.printStackTrace();
                }
            }
        }
    }
}
Modifié le: lundi 6 novembre 2023, 06:47