Application de gestion de location de voitures développée en JavaFX, MySQL et JDBC, dans le cadre du projet de Programmation Orientée Objet (POO).
DRIVE NOW est une application desktop permettant à une agence de location de gérer efficacement :
- les véhicules ;
- les utilisateurs ;
- les réservations ;
- les profils clients ;
- les documents PDF liés aux locations.
L'application suit une architecture MVC (Model - View - Controller) garantissant une séparation claire entre l'interface graphique, la logique métier et l'accès aux données.
- Connexion sécurisée
- Gestion de session
- Contrôle des rôles
- Ajouter un véhicule
- Modifier un véhicule
- Supprimer un véhicule
- Consulter le parc automobile
- Création de comptes
- Modification des profils
- Gestion des rôles
- Création de réservation
- Modification de réservation
- Annulation de réservation
- Vérification automatique de disponibilité
- Consultation des informations personnelles
- Mise à jour du profil
- Création automatique de documents PDF liés aux réservations
MVC
Model
├── entities
├── dao
└── services
View
└── JavaFX (FXML)
Controller
└── Gestion des événements utilisateur
src/main/java
│
├── app/
│ └── Main.java
│
├── controller/
│ ├── LoginController.java
│ ├── VehiculeController.java
│ ├── ReservationController.java
│ └── ...
│
├── model/
│ ├── entities/
│ │ ├── Utilisateur.java
│ │ ├── Vehicule.java
│ │ └── Reservation.java
│ │
│ ├── dao/
│ │ ├── UtilisateurDAO.java
│ │ ├── VehiculeDAO.java
│ │ └── ReservationDAO.java
│ │
│ └── services/
│ ├── AuthService.java
│ ├── VehiculeService.java
│ ├── ReservationService.java
│ └── PdfGeneratorService.java
│
└── utils/
| Technologie | Version |
|---|---|
| Java | 21 |
| JavaFX | 21.0.6 |
| Maven | Gestion des dépendances |
| MySQL | Base de données |
| JDBC | Accès aux données |
| Lombok | Réduction du code boilerplate |
| iTextPDF | Génération PDF |
| Git / GitHub | Gestion de versions |
git clone https://github.com/Tresor-Bilal-Projects/Java-Project.gitCréer une base de données :
CREATE DATABASE drivenow;Modifier le fichier DatabaseConnection.java :
private static final String URL =
"jdbc:mysql://localhost:3306/drivenow";
private static final String USER = "root";
private static final String PASSWORD = "password";mvn clean installmvn javafx:run- Hachage des mots de passe
- Requêtes préparées JDBC
- Gestion des sessions
- Contrôle d'accès par rôles
- Validation des données utilisateur
- Mbungu Trésor
- Pakou Gakosso Nathan
- Ondo Mintsa Pierre-Thyrel
- Mbianga Grace Merveille
- Nkwemfo Wacka Lunic Anders Degrace
Projet académique réalisé dans le cadre du Bachelor 2 (IREN).