Quelle est la différence entre les dépendances suivantes?
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.1.2.RELEASE</version>
</dependency>
contre
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.1.2.RELEASE</version>
</dependency>
Si j'inclus spring-webmvc
seul, alors spring-web
est implicitement ajouté.
Quand devrions-nous utiliser spring-web
seuls?
spring
maven
spring-mvc
Mahendran
la source
la source
spring-webmvc
inturn ajoutespring-web
, mais disons que si vous avez la version spring-webmvc comme 4.0.2, et que vous ajoutez une autre dépendance, par exemple laswagger-springmvc
version 0.8.8, alors il ajoute laspring-web
version 3.2.x. Dans ce cas, vous pourriez obtenir des exceptions de classe non trouvée, donc ici, vous devez explicitement ajouter unespring-web
version 4.0.2. J'ai rencontré ça aujourd'huispring-web
dépendance transitive dansswagger-springmvc
Extrait de la documentation officielle: Le module spring-web fournit des fonctionnalités d'intégration de base orientées Web telles que la fonctionnalité de téléchargement de fichiers en plusieurs parties et l'initialisation du conteneur IoC à l'aide d'écouteurs de servlet et d'un contexte d'application orienté Web. Il contient également un client HTTP et les parties Web de la prise en charge de la communication à distance de Spring.
Le module spring-webmvc (également connu sous le nom de module Web-Servlet) contient l'implémentation MVC (Model-View-Controller) de Spring et des services Web REST pour les applications Web. Le framework MVC de Spring fournit une séparation nette entre le code de modèle de domaine et les formulaires Web et s'intègre à toutes les autres fonctionnalités de Spring Framework.
Le module spring-webmvc-portlet (également connu sous le nom de module Web-Portlet) fournit l'implémentation MVC à utiliser dans un environnement de portlet et reflète la fonctionnalité du module spring-webmvc basé sur un servlet.
https://docs.spring.io/spring/docs/4.3.22.RELEASE/spring-framework-reference/htmlsingle/#overview-web
la source