Présentation technique
Ce projet est un système de gestion de boutique en ligne développé avec Java, Spring Boot et Vue, selon une architecture séparant le front-end et le back-end. Il sert de support pédagogique pour apprendre et pratiquer Java, Spring Boot et Vue, ainsi que la conception et le développement d'une application complète. Une connaissance préalable de Spring Boot et de Vue est recommandée.
Fonctionnalités principales
- Gestion des produits : le système permet d'enregistrer, de modifier et de rechercher les informations de base des produits, comme le nom, le prix et les remarques.
- Gestion des catégories : gestion des types de produits, notamment leur nom.
- Gestion des commentaires : administration et conslutation des commentaires du site.
- Gestion des utilisateurs : administration et consultation des informations des utilisateurs, avec ajout, modification et suppression.
- Analyse statistique : production de statistiques sur l'activité des produits et la participation des utilisateurs, afin d'aider l'admiinstrateur à comprendre l'état du système.
- Gestion des messages : l'administrateur peut publier des messages reçus par tous les utilisateurs du site.
- Gestion des publicités : l'administrateur peut publier des messages publicitaires affichés à droite de la page de détail.
- Retours utilisateurs : l'administrateur peut consulter dans le back-office les retours soumis par les utilisateurs.
- Informations système : l'administrateur peut consulter les informations de base du système, notamment le nom du système, les informations serveur, la mémoire, le CPU et les logiciels.
- Inscription et connexion : l'utilisateur doit s'inscrire et se connecter pour utiliser le site.
- Navigation sur le portail : après connexion à la page d'accueil, l'utilisateur peut parcourir la liste des produits, y compris les nouveautés et les produits les plus populaires.
- Recommandations populaires : recommandations basées sur un algorithme de filtrage collaboratif.
- Espace utilisateur : modification des informations de base, consultation des informations, mot de passe, favoris et likes.
- Mes commandes : informations sur les produits achetés.
- Retour d'opinion : page d'entrée permettant à l'utilisateur de soumettre un retour.
- Recherche floue : fonction de recherche en haut de page, prenant en charge la recherche approximative d'informations sur les produits.
- Commentaires sur les produits : les utilisateurs peuvent commenter les produits en bas de la page de détail.
Environnement de développement
- Back-end : Java 8 + Spring Boot
- Front-end : JavaScript + Vue
- Base de données : MySQL 5.7
- Plateformes de développement : IDEA + VS Code
- Environnement d'exécution : Windows 10/11
Technologies clés
- Stack front-end : ES6, Vue, Vuex, Vue Router, Vue CLI, Axios, Ant Design
- Stack back-end : Java, Spring Boot, MyBatis
Étapes d'exécution
Préparation des logiciels
- IDEA 2022 (à installer)
- MySQL 5.7 (à installer)
- Node.js (à installer)
Étapes d'exécution du back-end
(1) Ouvrir le répertoire server avec IDEA, configurer le JDK du projet et synchroniser les dépendances Maven.
(2) Créer la base de données. Exemple de commande SQL :
CREATE DATABASE IF NOT EXISTS boutique_en_ligne
DEFAULT CHARACTER SET utf8mb4
DEFAULT COLLATE utf8mb4_unicode_ci;
(3) Restaurer les données de la base. Dans MySQL, exécuter :
USE boutique_en_ligne;
SOURCE /chemin/vers/sauvegarde/boutique_en_ligne.sql;
(4) Configurer la base de données. Dans application.yml, définir les paramètres de connexion. Exemple :
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:boutique_en_ligne}?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Europe/Paris
username: ${DB_USER:root}
password: ${DB_PASSWORD:mot_de_passe}
(5) Démarrer le service. Cliquer sur le bouton d'exécution dans IDEA.
Étapes d'exécution du front-end
(1) Installer les dépendances. Se placer dans le répertoire web et exécuter :
npm install
(2) Lancer le projet :
npm run dev
Ensuite, ouvrir l'adresse du front-end.
Questions fréquentes
1. Quelle version de MySQL est requise ?
Réponse : MySQL 5.7 ou une version supérieure.
2. Quelle est la structure du code du projet ?
Réponse : Le répertoire server contient le code back-end, le répertoire web contient le code front-end.
3. Quelles connaissances techniques faut-il acquérir ?
Réponse : Java, le framework Spring Boot et Vue.
4. Quels sont les identifiants par défaut de l'administration ?
Réponse : Le compte administrateur est admin123 / admin123.
5. Que faire si le back-office indique que le compte de démonstration n'a pas les droits suffisants ?
Réponse : Modifier le rôle du compte de démonstration pour qu'il devienne administrateur, par exemple en mettant role = 3.