Maison > Java > javaDidacticiel > Architecture du cadre de base Spring

Architecture du cadre de base Spring

巴扎黑
Libérer: 2017-04-30 10:13:58
original
1649 Les gens l'ont consulté

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal