Comme mentionné ci-dessus: après la copie du projet, il ne faut aucun problème de l'importer directement avec l'idée (le dossier et la structure du package du projet doivent être corrects). Après avoir modifié le pilote MySQL et les fichiers de ressources de base de données dans le POM en fonction de vos besoins, vous pouvez le déployer sur Tomcat pour s'exécuter!
Système de gestion des clients CRM ( Spring + SpringMVC + MyBatis )
A mis à niveau le projet d'origine à l'aide de SSM
- Étant donné que Spring-Mybatis et Spring-TX ont assuré que la sécurité des threads et le traitement des transactions de SQLSession, des classes d'outils connexes telles que le proxy dynamique et le retrait des transactions ont été annulées. Dans le même temps, Spring-Mybatis a implémenté la couche DAO en utilisant le proxy et la réflexion dynamiques et peut injecter directement la couche DAO dans l'entreprise;
- La classe de contrôleur améliorée GlobalexceptionResolver à l'aide de @ControllerAdvice peut attraper toutes les exceptions de contrôleurs ordinaires et renvoyer les informations d'exception pertinentes en fonction du chemin de demande d'origine;
- Tout en utilisant des annotations de printemps dans la couche commerciale et la couche de contrôle, elle réduit considérablement le couplage et la redondance des codes, reflétant les idées d'injection du CIO et de la dépendance du printemps;
- La raison pour laquelle Spring Interceptor n'est pas utilisé ici est que l'intercepteur de printemps intercepte uniquement les classes annotées par @Controller et n'intercepte pas JSP. Par conséquent, Spring plaide en mettant des fichiers JSP dans le dossier Web-Inf, de sorte que le filtre de servlet d'origine est utilisé ici;
- WebApplicationContextUtils peut facilement supprimer les conteneurs de ressort des conteneurs de servlet;
- La rédaction de configurations de certains objets qui ne seront pas créées à plusieurs reprises (signifie quelque peu Singleton) dans les fichiers de configuration de Spring est une idée IOC typique. Bien sûr, vous pouvez également utiliser des classes de configuration sans les fichiers de configuration;
- Ici, vous devez configurer la configuration pertinente dans le fichier de configuration MyBatis avant de pouvoir publier le journal MyBatis;
- Les classes de test basées sur SSM doivent également effectuer des configurations connexes, qui est étroitement liée aux conteneurs de ressort. Heureusement, il existe des dépendances connexes pour prendre en charge cette configuration. Cette situation est bien meilleure à Springboot, et Springboot est presque fait en une seule fois;
- Bien que le frontal utilise des expressions JSTL et EL et même des scripts Java, c'est toujours un projet qui ne sépare pas le front-end et le back-end. Pendant le développement, vous sentirez évidemment que le développement frontal est plus difficile que le back-end. C'est également l'une des raisons pour lesquelles nous préconisons la séparation des frontaux et du back-end. La combinaison de Vue et Springbooot peut atténuer considérablement cette différence;
- En général, l'ensemble du projet est un très bon projet. Les détails des idées MVC approfondies aux bases frontaux et à l'arrière aux bases de données sont très bonnes. Malheureusement, l'utilisation de Spring-AOP n'est pas impliquée (car le projet n'en a pas besoin dans l'ensemble, si vous le forcez à être utilisé, vous pouvez faire vos propres journaux). Bien que certaines entreprises utilisent toujours SSM, le courant dominant du printemps aujourd'hui est le Springboot + divers middleware et les couches d'application. Le principal avantage de l'apprentissage SSM est maintenant de comprendre certaines des couches et des idées sous-jacentes du printemps, car SpringMVC simplifie les servlets, Springboot simplifie SpringMVC, et la fonction puissante de Springboot est d'encapsuler les couches sous-jacentes. Ok, je ne parlerai pas de bêtises. Il a fallu près de 21 jours pour construire l'environnement aux Echarts finaux, et il a fallu environ 4 heures par jour en moyenne (le temps d'apprendre de nouvelles choses n'est pas inclus). L'année dernière, SSM a appris de M. Wang (un très bon professeur) et son motte de cours a joué un grand rôle. Il y a de nombreux problèmes dans l'ensemble du projet qui sont en retard à réaliser. Par exemple, il existe de nombreuses méthodes de connexion pour la couche de contrôle pour recevoir des paramètres frontaux. Ce n'est qu'à la fin que j'ai réalisé: "Oh, il peut être utilisé comme ça ..." Enfin, l'ensemble du projet équivaut à un tiers du projet d'origine. L'idée de développement de base vient de l'enseignant. J'utilise simplement SSM et certaines de mes idées pour l'améliorer. Puisqu'il se concentre sur l'apprentissage, certains petits problèmes tels que la dénomination, les chemins, etc. se produiront inévitablement dans le projet. Heureusement, cela n'affectera pas l'utilisation générale à la fin. Ok, voyons-nous dans le projet Springboot suivant! (S'il y a quelque chose qui ne va pas avec ce qui précède, n'hésitez pas à me corriger!) »
Remarque: Après avoir terminé le module "Activités de marketing", les étudiants constateront certainement que l'entreprise restante doit réécrire un grand nombre d'ajouts, de suppressions, de modifications et de chèques est très gênant. Si vous ne l'écrivez pas, vous n'écrirez que des données directement dans la base de données comme un enseignant (je me sens très mal à l'aise). Par conséquent, je vise à implémenter l'entreprise principale et à rédiger l'ajout, les suppressions, les modifications et les vérifications qui montrent le mieux le processus de mise en œuvre de l'entreprise. Parce que j'ai besoin de déployer sur le serveur pour que tout le monde fonctionne, j'ai supprimé tous les contrôles et pages qui n'étaient pas disponibles sur le frontal. L'ensemble du projet est très rafraîchissant et il ne reste que le cœur de métier.
Informations hors ligne du nœud d'alimentation
Cours en ligne de Bilibili




