Les interfaces graphiques en JAVA

Ce document présente une introduction pratique à la création d'interfaces graphiques en Java avec Swing, la gestion des événements, ainsi que la connexion à une base de données MySQL. Il s'adresse aux étudiants en informatique souhaitant développer des applications Java avec interface utilisateur et gestion de données.

D'après le document Les interfaces graphiques en JAVA

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Les interfaces graphiques en JAVA

Document source

Les interfaces graphiques en JAVA

Computer Science - Software Development · PDF · 14 pages

Afficher l'aperçu du document

Consulter le document original →

Ce document présente une introduction pratique à la création d'interfaces graphiques en Java avec Swing, la gestion des événements, ainsi que la connexion à une base de données MySQL. Il s'adresse aux étudiants en informatique souhaitant développer des applications Java avec interface utilisateur et gestion de données.

Développement d’une interface graphique de login avec Swing

L’objectif est de concevoir une interface d’authentification simple en Java en utilisant la bibliothèque Swing. L’interface principale est un JFrame contenant des composants adaptés pour saisir un login et un mot de passe, ainsi que deux boutons : Login et SignIn.

Construction de l’interface

  • Choisir les composants Swing appropriés (JLabel, JTextField, JPasswordField, JButton).
  • Organiser ces composants dans un JFrame pour obtenir une interface claire et fonctionnelle.

Fonctionnement du bouton Login

Le bouton Login déclenche la vérification des identifiants saisis :

  • Si le login et le mot de passe sont corrects, une fenêtre de succès s’affiche.
  • Si le login est incorrect, une fenêtre d’erreur spécifique s’affiche.
  • Si le login est correct mais le mot de passe incorrect, une autre fenêtre d’erreur s’affiche.
  • Si les deux sont incorrects, une fenêtre d’erreur générale apparaît.

Fonctionnement du bouton SignIn

Le bouton SignIn ouvre un formulaire permettant d’enregistrer un nouvel utilisateur :

  • Le bouton Valider insère un nouvel utilisateur dans la base de données.
  • Le bouton Annuler réinitialise les champs du formulaire.

Contrôle de saisie

Chaque zone de saisie doit être rigoureusement contrôlée pour garantir que seules des valeurs valides sont insérées dans la base de données.

Connexion à une base de données MySQL depuis NetBeans ou Eclipse

Pour connecter une application Java à une base MySQL, il faut :

  1. Disposer d’un serveur MySQL opérationnel (par exemple XAMPP ou MySQL natif).
  2. Utiliser l’onglet Services dans NetBeans pour enregistrer le serveur MySQL.
  3. Configurer les paramètres du serveur, notamment les commandes de démarrage et d’arrêt.
  4. Créer une base de données nommée test.
  5. Tester la connexion à cette base.
  6. Renseigner le driver JDBC adéquat : com.mysql.jdbc.Driver.
  7. Tester à nouveau la connexion.

Le driver JDBC peut être téléchargé à l’adresse suivante : http://www.java2s.com/Code/Jar/c/Downloadcommysqljdbc515jar.htm

Exemple de code de connexion à la base de données

import java.sql.Connection;
import java.sql.DriverManager;

public class DBConnection {

  // Variable pour la connexion
  public Connection cnx;

  public Connection connecterDB(){
    try{
      Class.forName("com.mysql.jdbc.Driver");
      System.out.println("Driver ok");
      String url = "jdbc:mysql://localhost:3306/test";
      String user = "root";
      String password = "";

      Connection cnx = DriverManager.getConnection(url, user, password);
      System.out.println("Connexion bien établie");
      return cnx;

    } catch(Exception e) {
      e.printStackTrace();
      return null;
    }
  }
}

Structure de la table utilisateur

Colonne Type Clé primaire
loginVarChar(20)Oui
matriculeInt(10)Non
nomVarChar(20)Non
prenomVarChar(20)Non
mot_de_passeVarChar(20)Non
etatcharNon

Programmation du bouton Login

Le code suivant illustre la gestion de l’événement du bouton Login :

private void bt_loginActionPerformed(java.awt.event.ActionEvent evt) {
  // Objet pour se connecter à la base de données
  DBConnection b = new DBConnection();
  Connection cnx;

  String login = txt_login.getText();
  String mdp = txt_mdp.getText();
  cnx = b.connecterDB();

  try {
    // Création de la requête SQL
    String sql = "SELECT mot_de_passe FROM user WHERE login = '" + login + "'";
    Statement smt = cnx.createStatement();
    ResultSet rs = smt.executeQuery(sql);

    System.out.println("\nle rs est " + rs);
    int option = 0;

    if (rs.next()) {
      String motDePasse = rs.getString(1);
      if (motDePasse.equals(mdp)) {
        JOptionPane.showMessageDialog(null, "Connexion réussie !", "Success", JOptionPane.PLAIN_MESSAGE);
        if (option == JOptionPane.OK_OPTION)
          new MainMenu().setVisible(true);
        this.hide();
      } else {
        JOptionPane.showMessageDialog(null, "Mot de passe incorrect !", "Error", 1);
      }
    } else {
      JOptionPane.showMessageDialog(null, "Login incorrect !", "Error", 1);
    }
  } catch (SQLException e) {
    System.out.println(e.getMessage());
  }
}

Application de gestion des étudiants

Une fois authentifié, l’utilisateur accède à un menu principal permettant de gérer les étudiants dans la base de données.

Ajouter un étudiant

Un formulaire permet d’ajouter un étudiant. En cas de succès, un message de confirmation est affiché.

Supprimer un étudiant

La suppression d’un étudiant est confirmée par une boîte de dialogue avant d’être effectuée.

Recherche et modification

  • Le bouton Rechercher affiche les données d’un étudiant dans un jTable.
  • Le bouton Modifier permet de mettre à jour les informations dans la base de données avec confirmation.

Glossaire des termes clés

  • JFrame : Fenêtre principale d’une interface graphique Swing.
  • Swing : Bibliothèque Java pour la création d’interfaces graphiques.
  • JTextField : Composant Swing pour la saisie de texte simple.
  • JPasswordField : Composant Swing pour la saisie sécurisée de mots de passe.
  • JButton : Composant Swing représentant un bouton cliquable.
  • Driver JDBC : Pilote permettant à Java de communiquer avec une base de données.
  • MySQL : Système de gestion de base de données relationnelle.
  • Connection : Objet Java représentant une connexion active à une base de données.
  • Statement : Objet Java utilisé pour exécuter des requêtes SQL.
  • ResultSet : Objet Java contenant les résultats d’une requête SQL.
  • Base de données : Ensemble structuré de données stockées et accessibles informatiquement.
  • Contrôle de saisie : Vérification des données entrées par l’utilisateur avant traitement.

Points clés à retenir

  • La création d’interfaces graphiques en Java s’appuie sur les composants Swing adaptés à chaque besoin.
  • La gestion des événements permet d’interagir avec l’utilisateur, notamment via les boutons Login et SignIn.
  • La connexion à une base de données MySQL nécessite un driver JDBC et une configuration précise dans l’environnement de développement.
  • Le contrôle rigoureux des saisies garantit l’intégrité des données insérées dans la base.
  • Les opérations courantes sur la base (ajout, suppression, modification, recherche) peuvent être intégrées dans une interface graphique conviviale.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions