diff --git a/README.md b/README.md index 5de715c96b81c6ab21cea9659a84a5c8c626f904..8b1dd354a11e51f019c64377a80ba7bef98e7d51 100644 --- a/README.md +++ b/README.md @@ -9,12 +9,19 @@ 4. [📁 Arborescence du projet](#-arborescence-du-projet) 5. [🖥️ Liste des entrées des contrôleurs](#-liste-des-entrées-des-contrôleurs) 6. [🛠️ Points techniques et solutions](#️-points-techniques-et-solutions) -7. [➕ Améliorations et fonctionnalités futures](#-améliorations-et-fonctionnalités-en-plus) +7. [➕ Fonctionnalités et améliorations](#-fonctionnalités-et-améliorations) --- ## 📝 Description de l'application -➡️ **Décrire.** +LilleConnect est un projet réalisé dans le cadre du BUT Informatique. +Le but était de créer une application web permettant aux utilisateurs de +discuter et d’échanger dans des fils de discussion. Le projet repose sur +une base de données relationnelle et utilise des servlets Java avec JSP pour +la gestion des interactions. Il a été l'occasion de travailler sur +l’authentification des utilisateurs, la gestion des sessions et la +sécurité des données, tout en appliquant les bonnes pratiques du +développement web MVC. ### 🚀 **Comment lancer le projet sur linux ?** 1. **installaton de la base de données 2 options :** @@ -51,32 +58,99 @@ Vous pouvez vous connecter avec l'un des identifiants suivants, ou créer un nou ## 🗂️ Modélisation des données ### 📌 Modèle Conceptuel de Données (MCD) -➡️ **Première version MCD :** - +Ce premier MCD a été réalisé en fonction de notre vision initiale du projet, +en modélisant les principales entités et leurs relations avant d'affiner la structure lors du développement. -➡️ **Version finale MCD :** + - +Cette version finale du MCD intègre tous les ajouts et fonctionnalités supplémentaires, +offrant une structure optimisée et mieux adaptée aux besoins du projet. + + ### 📌 Modèle Logique de Données (MLD) -➡️ **Liste des tables avec leurs relations et types de données.** +Le MLD traduit le MCD en une structure relationnelle optimisée, prenant en +compte les contraintes d'intégrité et les performances de la base de données. - + --- ## 📊 Requêtes SQL pertinentes -Exemple : +**Table Utilisateur :** +Verifier l'utilsateur à la connexion : +```sql +SELECT * FROM Utilisateur +WHERE mail = 'test@test.fr' +AND mdp = md5('mdp'); +``` +Créer un compte utilisateur : +```sql +INSERT INTO Utilisateur (prenom, nom, mail, mdp) +VALUES ('Giorgio', 'UTZERI', 'giorgio.utzeri.etu@univ-lille.fr', MD5('iLoveJava')); +``` +Afficher le nom et prénom : +```sql +SELECT prenom, nom FROM Utilisateur WHERE u_id = 1; +``` + +**Table Message :** +Créer un message : +```sql +INSERT INTO Message (f_id, u_id, message_data, is_image, d_vie, datemessage) +VALUES (1, 1, 'message', false, 14, NOW()); +``` +Afficher un message : ```sql --- REQUETE 1 -SELECT * FROM utilisateur; +SELECT * FROM Message WHERE m_id = 1; +``` + +**Table Fil :** +Créer un fil : +```sql +INSERT INTO Fil (titre) +VALUES ('Discussion'); ``` ## 📁 Arborescence du projet -mettre tout + explication +L'arborescence du projet suit le principe MVC en séparant les +contrôleurs, qui gèrent la logique entre la vue et la base de +données, des DAO, responsables des interactions avec la base de +données, et des DTO, qui assurent le transfert des données entre les couches. + +└── src +├── controleurs +│ ├── AccountAuthent.java +│ ├── AccountCreate.java +│ ├── APIRest.java +│ ├── FilAddUser.java +│ ├── FilCreate.java +│ ├── FilLeave.java +│ ├── FilUser.java +│ ├── JwtManager.java +│ ├── LikeControler.java +│ ├── LogoutControler.java +│ ├── Menu.java +│ ├── MessageSend.java +│ └── UserInfo.java +├── dao +│ ├── ConfigLoader.java +│ ├── DS.java +│ ├── FilDAO.java +│ ├── LikeDAO.java +│ ├── MessageDAO.java +│ ├── ParticipantFilDAO.java +│ └── UtilisateurDAO.java +└── dto +├── Fil.java +├── Message.java +├── PartFil.java +├── QuiLike.java +└── Utilisateur.java + ## 🖥️ Liste des entrées des contrôleurs @@ -92,7 +166,7 @@ mettre tout + explication parler des difficultés etc -## ➕ Améliorations et fonctionnalités en plus +## ➕ Fonctionnalités et améliorations ✅ 1 ✅ 2 diff --git a/notes/Capture.PNG b/images/mcd1.PNG similarity index 100% rename from notes/Capture.PNG rename to images/mcd1.PNG