Un projet CRUD basé sur Jakarta EE utilisant Hibernate ORM, Jakarta Persistence, MySQL et des technologies modernes de Java pour construire des applications web pilotées par une base de données.
- Introduction
- Technologies utilisées
- Structure du projet
- Fonctionnalités
- Configuration du projet
- Guide d'exécution
- Captures d'écran
- Conclusion
Ce projet illustre la mise en œuvre d'une application web permettant de gérer des clients, produits, et commandes.
L'application suit l'architecture MVC (Model-View-Controller) et exploite les standards de Jakarta EE, accompagnés de MySQL pour le stockage des données.
- Jakarta EE (Servlets, JSP, JSTL) : Structure l'application en suivant l'architecture MVC.
- Hibernate ORM : Simplifie la gestion des entités Java et leur persistance dans MySQL.
- MySQL : Base de données relationnelle utilisée pour stocker les entités.
- Apache Tomcat : Serveur d'applications pour déployer l'application.
- Maven : Gestionnaire de dépendances.
- Lombok : Réduit le code répétitif en Java.
Le projet est organisé en couches :
- Modèle : Définit les entités persistantes.
- DAO : Fournit des méthodes pour interagir avec la base de données.
- Contrôleur : Traite les requêtes des utilisateurs via des servlets.
- Vue : Fournit l'interface utilisateur avec JSP et JSTL.
- Liste des clients : Affiche une liste de tous les clients enregistrés.
- Ajout d’un nouveau client : Permet d'ajouter un client avec des informations spécifiques.
- Modification des informations d’un client : Met à jour les informations d'un client existant.
- Suppression d’un client : Supprime un client de la base de données.
- Liste des produits : Affiche une liste de tous les produits disponibles.
- Ajout d’un nouveau produit : Permet d'ajouter un produit avec des informations spécifiques.
- Modification des informations d’un produit : Met à jour les informations d'un produit existant.
- Suppression d’un produit : Supprime un produit de la base de données.
- Liste des commandes : Affiche une liste de toutes les commandes passées.
- Création d’une nouvelle commande : Permet de créer une commande associant un client et des produits.
- Visualisation des détails d’une commande : Montre les détails d'une commande spécifique.
- Clonez ce dépôt :
git clone https://github.com/MohamedBarbych/jakartaee-crud-app.git cd jakartaee-crud-app
Ce projet met en lumière les concepts clés de Jakarta EE et leur application dans des projets réels. Des améliorations futures pourraient inclure :
- Une meilleure validation des formulaires.
- L'intégration de graphiques pour visualiser les données.
- Créez un dossier
screenshots
dans votre dépôt GitHub. - Ajoutez les captures d'écran pour chaque fonctionnalité et diagramme dans le dossier
screenshots
. - Mettez à jour les chemins des captures d'écran dans le fichier README si nécessaire.
src/main/java/ma/fstt/crudlsilab
├── entities // Entités Java
├── dao // DAO pour interagir avec la base de données
├── controllers // Servlets pour gérer les requêtes
├── views // JSP pour les interfaces utilisateur