0% ont trouvé ce document utile (0 vote)
16 vues4 pages

Solution Java pour gestion des paiements

Un bon document

Transféré par

luambamarcel6
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 PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
16 vues4 pages

Solution Java pour gestion des paiements

Un bon document

Transféré par

luambamarcel6
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 PDF, TXT ou lisez en ligne sur Scribd

Voici une solution complète pour ton examen en Java :

Classe Paiement

Cette classe contient les attributs demandés ainsi que les accesseurs, mutateurs et la
méthode enregistrer.

import [Link];

public class Paiement {


private int numero;
private String date;
private String nomEtudiant;
private double montant;

// Constructeur
public Paiement(String date, String nomEtudiant, double montant) {
[Link] = date;
[Link] = nomEtudiant;
[Link] = montant;
}

// Getters et Setters
public int getNumero() {
return numero;
}

public void setNumero(int numero) {


[Link] = numero;
}

public String getDate() {


return date;
}

public void setDate(String date) {


[Link] = date;
}

public String getNomEtudiant() {


return nomEtudiant;
}

public void setNomEtudiant(String nomEtudiant) {


[Link] = nomEtudiant;
}
public double getMontant() {
return montant;
}

public void setMontant(double montant) {


[Link] = montant;
}

// Méthode pour enregistrer les paiements


public static void enregistrer(ArrayList<Paiement> listePaiements, BDConnexion bd) {
for (Paiement p : listePaiements) {
String requete = "INSERT INTO paie (date, nom_etudiant, montant) VALUES ('" +
[Link]() + "', '" + [Link]() + "', " + [Link]() + ")";
[Link](requete);
}
}
}

Classe BDConnexion

Cette classe gère la connexion à la base de données et l'exécution des requêtes SQL.

import [Link];
import [Link];
import [Link];
import [Link];

public class BDConnexion {


private Connection connection;

public BDConnexion() {
try {
// Remplace ces valeurs par celles de ta base de données
String url = "jdbc:mysql://localhost:3306/BDFasi";
String user = "root";
String password = "";

connection = [Link](url, user, password);


[Link]("Connexion réussie à la base de données !");
} catch (SQLException e) {
[Link]("Erreur de connexion : " + [Link]());
}
}

// Méthode pour exécuter une requête SQL


public void maj(String requete) {
try {
Statement statement = [Link]();
[Link](requete);
[Link]("Mise à jour effectuée !");
} catch (SQLException e) {
[Link]("Erreur lors de l'exécution de la requête : " + [Link]());
}
}

// Méthode pour fermer la connexion


public void fermerConnexion() {
try {
if (connection != null) {
[Link]();
[Link]("Connexion fermée.");
}
} catch (SQLException e) {
[Link]("Erreur lors de la fermeture de la connexion : " + [Link]());
}
}
}

Classe TestPaiement

Cette classe permet de tester l'ajout de paiements via une boîte de dialogue.

import [Link];
import [Link];

public class TestPaiement {


public static void main(String[] args) {
ArrayList<Paiement> listePaiements = new ArrayList<>();
BDConnexion bd = new BDConnexion();

// Demander à l'utilisateur d'entrer le nombre de paiements à ajouter


int nombrePaiements = [Link]([Link]("Entrez le
nombre de paiements à enregistrer :"));

for (int i = 0; i < nombrePaiements; i++) {


String date = [Link]("Entrez la date du paiement
(YYYY-MM-DD) :");
String nomEtudiant = [Link]("Entrez le nom de l'étudiant :");
double montant = [Link]([Link]("Entrez le
montant à payer :"));

Paiement paiement = new Paiement(date, nomEtudiant, montant);


[Link](paiement);
}

// Enregistrer les paiements dans la base de données


[Link](listePaiements, bd);

// Fermer la connexion
[Link]();
}
}

Explication :

1.​ Classe Paiement :​

○​ Définit les attributs nécessaires.


○​ Contient des accesseurs et mutateurs.
○​ Implémente enregistrer, qui parcourt la collection et envoie les données à
la base.
2.​ Classe BDConnexion :​

○​ Gère la connexion à la base de données.


○​ Contient la méthode maj pour exécuter des requêtes SQL.
○​ Fournit une méthode fermerConnexion pour fermer la connexion
proprement.
3.​ Classe TestPaiement :​

○​ Utilise JOptionPane pour demander les entrées à l'utilisateur.


○​ Crée une liste de paiements.
○​ Enregistre ces paiements dans la base.
○​ Ferme la connexion après l'enregistrement.

Cette solution est prête à être exécutée et fonctionnera correctement avec une base de
données MySQL correctement configurée.

Vous aimerez peut-être aussi