0% ont trouvé ce document utile (0 vote)
2 vues5 pages

TP Java Swing

Ce document fournit un guide étape par étape pour créer une application CRUD en Java avec Swing, NetBeans et MySQL, visant à gérer une liste d'étudiants. Il couvre la préparation de la base de données, la configuration du projet, la création de la classe de connexion, la conception de l'interface utilisateur et l'implémentation des opérations CRUD. Chaque étape inclut des instructions détaillées et des exemples de code pour faciliter le développement de l'application.

Transféré par

momo4v04
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues5 pages

TP Java Swing

Ce document fournit un guide étape par étape pour créer une application CRUD en Java avec Swing, NetBeans et MySQL, visant à gérer une liste d'étudiants. Il couvre la préparation de la base de données, la configuration du projet, la création de la classe de connexion, la conception de l'interface utilisateur et l'implémentation des opérations CRUD. Chaque étape inclut des instructions détaillées et des exemples de code pour faciliter le développement de l'application.

Transféré par

momo4v04
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Voici une structure complète et étape par étape pour un Travail Pratique (TP) sur la

création d'une application CRUD avec Java Swing, NetBeans et MySQL.

Ce guide est conçu pour être directement applicable et facile à suivre.

Objectif du TP
Créer une application de bureau Java permettant de gérer une liste d'étudiants
(Ajouter, Modifier, Supprimer, Afficher) connectée à une base de données MySQL.

Étape 1 : Préparation de la base de données (MySQL)


Commencez par créer la base de données et la table nécessaires via phpMyAdmin
ou votre console MySQL.

SQL
CREATE DATABASE gestion_ecole;
USE gestion_ecole;

CREATE TABLE etudiant (


id INT AUTO_INCREMENT PRIMARY KEY,
matricule VARCHAR(20) UNIQUE NOT NULL,
nom VARCHAR(50) NOT NULL,
prenom VARCHAR(50) NOT NULL,
filiere VARCHAR(50) NOT NULL
);

Étape 2 : Configuration du projet sous NetBeans


1. Ouvrez NetBeans et allez dans File > New Project > Java with Ant > Java
Application.
2. Nommez le projet GestionEtudiants et décochez "Create Main Class" (nous
utiliserons une JFrame comme point d'entrée).
3. Ajout du pilote MySQL (JDBC) :
 Dans la fenêtre Projects à gauche, faites un clic droit sur le dossier Libraries.
 Sélectionnez Add Library...
 Cherchez et ajoutez MySQL JDBC Driver (ou ajoutez le .jar du connecteur MySQL
si vous l'avez téléchargé manuellement).

Étape 3 : Création de la classe de connexion


Créez un package [Link] et ajoutez-y une classe Java nommée
[Link]. Cette classe gérera la connexion à MySQL.

Java
package [Link];
import [Link];
import [Link];
import [Link];

public class ConnectBD {


private static final String URL =
"jdbc:mysql://localhost:3306/gestion_ecole";
private static final String USER = "root"; // À adapter selon votre
config
private static final String PASSWORD = ""; // À adapter selon votre
config

public static Connection obtenirConnexion() {


Connection con = null;
try {
[Link]("[Link]");
con = [Link](URL, USER, PASSWORD);
} catch (ClassNotFoundException | SQLException e) {
[Link]("Erreur de connexion : " + [Link]());
}
return con;
}
}

Étape 4 : Conception de l'interface (JFrame)


1. Créez un nouveau package [Link].
2. Faites un clic droit sur ce package > New > JFrame Form. Nommez-le
EtudiantForm.
3. Utilisez la palette de NetBeans (Drag & Drop) pour créer l'interface avec les
composants suivants et renommez leurs "Variable Name" :
 Champs de texte (JTextField) : txtMatricule, txtNom, txtPrenom, txtFiliere.
 Boutons (JButton) : btnAjouter, btnModifier, btnSupprimer, btnActualiser.
 Tableau (JTable) : tableEtudiants (placez-le dans un JScrollPane).

Étape 5 : Implémentation du code CRUD dans la JFrame


Allez dans la section Source de votre [Link] et ajoutez le code suivant.

1. Importations et méthode d'affichage (Read)


Ajoutez ces imports au début du fichier et créez la méthode pour charger les
données dans la JTable.

Java
import [Link];
import [Link].*;
import [Link];
import [Link];

// Dans la classe EtudiantForm :


public void afficherEtudiants() {
try {
Connection con = [Link]();
String sql = "SELECT * FROM etudiant";
PreparedStatement pst = [Link](sql);
ResultSet rs = [Link]();

DefaultTableModel model = (DefaultTableModel)


[Link]();
[Link](0); // Vider le tableau avant de le remplir

while ([Link]()) {
[Link](new Object[]{
[Link]("id"),
[Link]("matricule"),
[Link]("nom"),
[Link]("prenom"),
[Link]("filiere")
});
}
[Link]();
} catch (Exception e) {
[Link](null, "Erreur d'affichage : " +
[Link]());
}
}

Appelez afficherEtudiants(); dans le constructeur de EtudiantForm juste après


initComponents(); pour charger les données au démarrage.

2. Action du bouton Ajouter (Create)


Faites un double-clic sur le bouton Ajouter en mode Design pour générer
l'événement, puis insérez :

Java
try {
Connection con = [Link]();
String sql = "INSERT INTO etudiant (matricule, nom, prenom, filiere)
VALUES (?, ?, ?, ?)";
PreparedStatement pst = [Link](sql);

[Link](1, [Link]());
[Link](2, [Link]());
[Link](3, [Link]());
[Link](4, [Link]());

[Link]();
[Link](null, "Étudiant ajouté avec succès !");
[Link]();
afficherEtudiants(); // Mettre à jour le tableau

} catch (Exception e) {
[Link](null, "Erreur lors de l'ajout : " +
[Link]());
}

3. Récupérer les données au clic sur le tableau


Pour pouvoir modifier ou supprimer, il faut remplir les champs lorsqu'on clique sur
une ligne. Faites un clic droit sur la tableEtudiants > Events > Mouse >
mouseClicked :

Java
int ligne = [Link]();
DefaultTableModel model = (DefaultTableModel) [Link]();

[Link]([Link](ligne, 1).toString());
[Link]([Link](ligne, 2).toString());
[Link]([Link](ligne, 3).toString());
[Link]([Link](ligne, 4).toString());
// Vous pouvez stocker l'ID dans une variable globale pour la
modification/suppression

4. Action du bouton Modifier (Update)


Double-clic sur le bouton Modifier :

Java
try {
int ligne = [Link]();
if (ligne == -1) {
[Link](null, "Veuillez sélectionner un
étudiant à modifier.");
return;
}
String id = [Link]().getValueAt(ligne, 0).toString();

Connection con = [Link]();


String sql = "UPDATE etudiant SET matricule=?, nom=?, prenom=?,
filiere=? WHERE id=?";
PreparedStatement pst = [Link](sql);

[Link](1, [Link]());
[Link](2, [Link]());
[Link](3, [Link]());
[Link](4, [Link]());
[Link](5, id);

[Link]();
[Link](null, "Étudiant modifié avec succès !");
[Link]();
afficherEtudiants();

} catch (Exception e) {
[Link](null, "Erreur lors de la modification : "
+ [Link]());
}

5. Action du bouton Supprimer (Delete)


Double-clic sur le bouton Supprimer :

Java
try {
int ligne = [Link]();
if (ligne == -1) {
[Link](null, "Veuillez sélectionner un
étudiant à supprimer.");
return;
}
String id = [Link]().getValueAt(ligne, 0).toString();

int confirmation = [Link](null, "Voulez-vous


vraiment supprimer cet étudiant ?", "Confirmation",
JOptionPane.YES_NO_OPTION);

if (confirmation == JOptionPane.YES_OPTION) {
Connection con = [Link]();
String sql = "DELETE FROM etudiant WHERE id=?";
PreparedStatement pst = [Link](sql);
[Link](1, id);

[Link]();
[Link](null, "Étudiant supprimé !");
[Link]();
afficherEtudiants();

// Vider les champs


[Link](""); [Link]("");
[Link](""); [Link]("");
}
} catch (Exception e) {
[Link](null, "Erreur de suppression : " +
[Link]());
}

Vous aimerez peut-être aussi