À propos du projet

Ce tutoriel est un guide pratique complet documentant comment connecter Java à une base de données MySQL et exécuter des requêtes SQL depuis Eclipse. Il a été rédigé dans le cadre du BTS SIO pour accompagner l'apprentissage de la connexion base de données en Java via JDBC (Java Database Connectivity).

Le document inclut des captures d'écran pas à pas couvrant l'installation du driver JDBC, la configuration du projet Eclipse, l'établissement de la connexion, et l'exécution de toutes les opérations CRUD.

Contenu du tutoriel

🔌

Configuration JDBC

Installation et ajout du driver MySQL Connector/J dans le classpath Eclipse. Configuration du projet pour la connexion à la base de données.

🔗

Connexion à la BDD

Établissement de la connexion via DriverManager.getConnection() avec URL JDBC, nom d'utilisateur et mot de passe. Gestion des exceptions SQL.

📖

Requêtes SELECT

Lecture de données avec Statement et ResultSet. Itération sur les résultats et extraction des valeurs par nom de colonne.

Insertion de données

Utilisation de PreparedStatement pour insérer des enregistrements de manière sécurisée, avec paramètres liés pour éviter les injections SQL.

✏️

Mise à jour (UPDATE)

Modification d'enregistrements existants avec requêtes préparées. Vérification du nombre de lignes affectées via executeUpdate().

🗑️

Suppression (DELETE)

Suppression d'enregistrements ciblés avec conditions WHERE. Bonnes pratiques pour éviter les suppressions accidentelles.

Étapes couvertes dans le tutoriel

01

Installation du driver JDBC

Téléchargement du MySQL Connector/J depuis le site officiel. Ajout du fichier .jar dans le Build Path du projet Eclipse via Properties → Java Build Path → Add External JARs.

02

Création de la base de données de test

Création d'une base MySQL de test avec une table simple (ex : etudiants avec id, nom, prénom, note). Script SQL fourni dans le tutoriel.

03

Établissement de la connexion

Écriture de la classe de connexion avec l'URL JDBC (jdbc:mysql://localhost:3306/nomBDD), chargement du driver et gestion des erreurs avec try-catch.

04

Requêtes SELECT et affichage

Exécution d'une requête SELECT avec createStatement() et executeQuery(). Parcours du ResultSet avec while(rs.next()) pour afficher les données en console.

05

INSERT, UPDATE, DELETE avec PreparedStatement

Remplacement des Statement simples par des PreparedStatement paramétrés pour toutes les opérations d'écriture. Explication des avantages en termes de sécurité et performance.

06

Fermeture propre des ressources

Importance de fermer ResultSet, Statement et Connection dans un bloc finally ou avec try-with-resources pour éviter les fuites mémoire.

Extrait de code — connexion et SELECT

import java.sql.*;

public class ConnexionBDD {
    static final String URL  = "jdbc:mysql://localhost:3306/ma_bdd";
    static final String USER = "root";
    static final String PASS = "";

    public static void main(String[] args) {
        try (Connection conn = DriverManager.getConnection(URL, USER, PASS);
             Statement  stmt = conn.createStatement();
             ResultSet  rs   = stmt.executeQuery("SELECT * FROM etudiants")) {

            while (rs.next()) {
                System.out.println(
                    rs.getInt("id")     + " | " +
                    rs.getString("nom") + " " +
                    rs.getString("prenom")
                );
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

Extrait de code — INSERT sécurisé

String sql = "INSERT INTO etudiants (nom, prenom, note) VALUES (?, ?, ?)";

try (PreparedStatement pstmt = conn.prepareStatement(sql)) {
    pstmt.setString(1, "Dupont");
    pstmt.setString(2, "Alice");
    pstmt.setDouble(3, 17.5);

    int lignes = pstmt.executeUpdate();
    System.out.println(lignes + " ligne(s) insérée(s).");
} catch (SQLException e) {
    e.printStackTrace();
}

Compétences couvertes

  • Comprendre le rôle de JDBC comme couche d'abstraction entre Java et la BDD
  • Configurer un projet Eclipse avec un driver externe (.jar)
  • Établir et gérer une connexion MySQL depuis Java
  • Exécuter les 4 opérations CRUD en Java (SELECT, INSERT, UPDATE, DELETE)
  • Utiliser PreparedStatement pour des requêtes sécurisées et paramétrées
  • Appliquer les bonnes pratiques de gestion des ressources (try-with-resources)
  • Gestion des exceptions SQLException