Maison Java javaDidacticiel Architecture du cadre de base Spring

Architecture du cadre de base Spring

Apr 30, 2017 am 10:13 AM

De nombreuses personnes utilisent Spring pour développer des projets Java, mais lors de la configuration des dépendances Maven, il n'est pas clair quels fichiers Spring Jar configurer. Ils en ajoutent souvent un certain nombre de manière aléatoire, puis continuent à configurer les dépendances Jar lors de la compilation ou de l'exécution d'erreurs signalées. , ce qui entraîne une confusion des dépendances Spring, voire un téléchargement. Lors de la création du même type de projet à la fois, je ne sais pas quelles dépendances Spring configurer, je ne peux que les copier. En fait, c'est ce que j'ai fait au début. !

Il n'y a qu'une vingtaine de packages jar au printemps, chacun avec des fonctions correspondantes. Un jar peut également dépendre de plusieurs autres jars. Il est donc concis et clair de comprendre la relation entre eux et de configurer les dépendances maven. le framework Spring dans les projets Java ordinaires, quels jars sont nécessaires ? Juste un

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.2.17.RELEASE</version>
</dependency>
Copier après la connexion

Que diriez-vous d'introduire Spring MVC dans les projets Web ? Il vous suffit de configurer une dépendance

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.2.17.RELEASE</version>
</dependency>
Copier après la connexion

Pourquoi peut-il être configuré ainsi ? Ensuite, nous prenons la version spring 3.2.17.RELEASE comme exemple pour présenter la structure du framework Spring. Spring 4 est légèrement différent et sera présenté à la fin

. Le site officiel du printemps donne un schéma de structure du printemps 3

L'image divise Spring en 5 parties : core, aop, data access, web et test. Chaque rectangle arrondi dans l'image correspond à un pot s'il est configuré dans maven, le "groupId" de tous ces pots est "org" .springframework. ", chaque pot a un "artefactId" différent, de plus, "instrumentation" a deux pots, et un "spring-context-support" n'est pas répertorié dans la figure, il y a donc 19 packages de pots pour spring3 au total.

Ce qui suit présente les pots et les dépendances de ces cinq parties

noyau

La partie centrale contient 4 modules

  1. spring-core : L'implémentation la plus basique de l'injection de dépendances IoC et DI


  2. spring-beans : Fabrique de haricots et assemblage de haricots


  3. spring-context : le contexte de spring est le conteneur IoC


  4. spring-expression : langage d'expression printanière

Leurs dépendances complètes

Étant donné que spring-core s'appuie sur commons-logging et que d'autres modules s'appuient sur spring-core, l'ensemble du framework Spring repose sur commons-logging. Si vous disposez de votre propre implémentation de journal telle que log4j, vous pouvez éliminer la dépendance à l'égard de commons-logging. L'implémentation No Log exclut la dépendance commons-logging, erreur de compilation

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.2.17.RELEASE</version>
    <exclusions>
        <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>
Copier après la connexion

aop

La partie aop contient 4 modules

  1. spring-aop : programmation orientée aspect


  2. aspects-printemps : AspectJ intégré


  3. spring-instrument : fournit une prise en charge des outils au niveau de la classe et une implémentation au niveau du ClassLoader pour le serveur


  4. spring-instrument-tomcat : implémentation d'instruments pour Tomcat

Leurs dépendances

accès aux données

La partie accès aux données contient 5 modules

  1. spring-jdbc : support jdbc


  2. spring-tx : contrôle des transactions


  3. spring-orm : mappage relationnel objet, framework orm intégré


  4. spring-oxm : mappage XML d'objet


  5. spring-jms : service de messagerie java

Leurs dépendances

le web

La partie web contient 4 modules

  1. spring-web : fonctions Web de base, telles que le téléchargement de fichiers


  2. spring-webmvc : implémentation de mvc


  3. spring-webmvc-portlet : implémentation mvc basée sur un portlet


  4. spring-struts : Intégration avec struts, non recommandée, spring4 ne fournit plus

Leurs dépendances

tester

Il n'y a qu'un seul module dans la partie test, je mettrai ici aussi spring-context-support

  1. spring-test : test de printemps, fournissant des fonctions de tests junit et simulés


  2. spring-context-support : packages de support supplémentaires Spring, tels que les services de messagerie, l'analyse des vues, etc.

Leurs dépendances

C'est la fin de l'introduction au printemps 3. En regardant ces images, je pense que vous ne serez plus confus lors de la configuration des dépendances Spring dans maven

Ce qui suit présente spring4, qui est fondamentalement la même structure que spring3. Ce qui suit est le schéma de structure donné par le site officiel

.

Comme vous pouvez le voir, les entretoises de spring3 ont été supprimées de l'image, la messagerie et le websocket ont été ajoutés, et les autres modules restent inchangés. Il y a donc 20 pots de spring4

  1. . spring-websocket : Un outil de communication efficace pour les applications web


  2. spring-messaging : pour créer des applications basées sur la messagerie

Leurs dépendances

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un nouveau paradigme de programmation, quand Spring Boot rencontre OpenAI Un nouveau paradigme de programmation, quand Spring Boot rencontre OpenAI Feb 01, 2024 pm 09:18 PM

En 2023, la technologie de l’IA est devenue un sujet brûlant et a un impact énorme sur diverses industries, notamment dans le domaine de la programmation. Les gens sont de plus en plus conscients de l’importance de la technologie de l’IA, et la communauté Spring ne fait pas exception. Avec l’évolution continue de la technologie GenAI (Intelligence Artificielle Générale), il est devenu crucial et urgent de simplifier la création d’applications dotées de fonctions d’IA. Dans ce contexte, « SpringAI » a émergé, visant à simplifier le processus de développement d'applications fonctionnelles d'IA, en le rendant simple et intuitif et en évitant une complexité inutile. Grâce à « SpringAI », les développeurs peuvent plus facilement créer des applications dotées de fonctions d'IA, ce qui les rend plus faciles à utiliser et à exploiter.

Utilisez Spring Boot et Spring AI pour créer des applications d'intelligence artificielle générative Utilisez Spring Boot et Spring AI pour créer des applications d'intelligence artificielle générative Apr 28, 2024 am 11:46 AM

En tant que leader du secteur, Spring+AI fournit des solutions de pointe pour divers secteurs grâce à son API puissante et flexible et ses fonctions avancées. Dans cette rubrique, nous examinerons les exemples d'application de Spring+AI dans divers domaines. Chaque cas montrera comment Spring+AI répond à des besoins spécifiques, atteint ses objectifs et étend ces LEÇONS APPRISES à une gamme plus large d'applications. J'espère que ce sujet pourra vous inciter à comprendre et à utiliser plus profondément les possibilités infinies de Spring+AI. Le framework Spring a une histoire de plus de 20 ans dans le domaine du développement logiciel, et cela fait 10 ans que la version Spring Boot 1.0 est sortie. Maintenant, personne ne peut contester ce printemps

Quelles sont les méthodes de mise en œuvre des transactions programmatiques Spring ? Quelles sont les méthodes de mise en œuvre des transactions programmatiques Spring ? Jan 08, 2024 am 10:23 AM

Comment implémenter les transactions programmatiques Spring : 1. Utilisez TransactionTemplate ; 2. Utilisez TransactionCallback et TransactionCallbackWithoutResult ; 3. Utilisez les annotations Transactional ; 4. Utilisez TransactionTemplate en combinaison avec @Transactional ;

Comment implémenter des tâches planifiées dans Java Spring Comment implémenter des tâches planifiées dans Java Spring May 24, 2023 pm 01:28 PM

Java implémente les tâches planifiées dans la bibliothèque fournie avec Jdk, il existe deux façons d'implémenter les tâches planifiées, l'une est Timer et l'autre est ScheduledThreadPoolExecutor. Lorsque Timer+TimerTask crée un Timer, il crée un thread, qui peut être utilisé pour planifier des tâches TimerTask. Timer a quatre méthodes de construction, et vous pouvez spécifier le nom du thread Timer et s'il doit être défini comme thread démon. Le nom par défaut est Timer-number et il ne s'agit pas d'un thread démon par défaut. Il existe trois méthodes principales : cancel() : mettre fin à la planification des tâches et annuler toutes les tâches actuellement planifiées. purge() : supprimer les tâches de la file d'attente des tâches.

Les différences et les connexions entre Spring Boot et Spring Cloud Les différences et les connexions entre Spring Boot et Spring Cloud Jun 22, 2023 pm 06:25 PM

SpringBoot et SpringCloud sont tous deux des extensions de Spring Framework qui aident les développeurs à créer et déployer des applications de microservices plus rapidement, mais elles ont chacune des objectifs et des fonctions différents. SpringBoot est un framework permettant de créer rapidement des applications Java, permettant aux développeurs de créer et de déployer plus rapidement des applications basées sur Spring. Il fournit un moyen simple et facile à comprendre de créer des applications Spring autonomes et exécutables.

Les 7 annotations les plus utilisées dans Spring, l'organisation la plus puissante de l'histoire ! Les 7 annotations les plus utilisées dans Spring, l'organisation la plus puissante de l'histoire ! Jul 26, 2023 pm 04:38 PM

Avec la mise à jour et l'itération de la technologie, Java5.0 a commencé à prendre en charge les annotations. En tant que framework leader en Java, Spring a lentement commencé à abandonner la configuration XML depuis sa mise à jour vers la version 2.5, et davantage d'annotations sont utilisées pour contrôler le framework Spring.

Comment définir le niveau d'isolement des transactions au printemps Comment définir le niveau d'isolement des transactions au printemps Jan 26, 2024 pm 05:38 PM

Comment définir le niveau d'isolement des transactions dans Spring : 1. Utilisez l'annotation @Transactional ; 2. Définissez-le dans le fichier de configuration Spring ; 3. Utilisez PlatformTransactionManager ; Introduction détaillée : 1. Utilisez l'annotation @Transactional, ajoutez l'annotation @Transactional à la classe ou à la méthode qui nécessite la gestion des transactions et définissez le niveau d'isolement dans l'attribut 2. Dans le fichier de configuration Spring, etc.

Apprenez Spring Cloud à partir de zéro Apprenez Spring Cloud à partir de zéro Jun 22, 2023 am 08:11 AM

En tant que développeur Java, apprendre et utiliser le framework Spring est une compétence essentielle. Avec la popularité du cloud computing et des microservices, apprendre et utiliser Spring Cloud est devenu une autre compétence qui doit être maîtrisée. SpringCloud est un ensemble d'outils de développement basé sur SpringBoot permettant de créer rapidement des systèmes distribués. Il fournit aux développeurs une série de composants, notamment l'enregistrement et la découverte de services, un centre de configuration, l'équilibrage de charge et des disjoncteurs, etc., permettant aux développeurs de créer des micro-ordinateurs.

See all articles