Je viens de commencer à apprendre le printemps. Dans ma prochaine étape, je voudrais développer de plus grandes applications Web.
Maintenant, je me demande si je devrais commencer avec Spring Boot ou Spring MVC. J'ai déjà lu quelques trucs, mais c'est déroutant car les deux se ressemblent.
Alors, quelles sont les différences entre les deux?
Spring Boot
puis remplir la fonctionnalité Web avecSpring MVC
?Spring MVC et Spring Boot sont bien décrits dans d'autres réponses, et donc sans répéter cela, permettez-moi de passer directement aux détails. Spring Boot et Spring MVC ne sont pas comparables ni s'excluent mutuellement. Si vous souhaitez faire du développement d'applications Web à l'aide de Spring, vous utiliserez quand même Spring MVC . Votre question devient alors d'utiliser ou non Spring Boot .
Pour développer des applications Spring courantes ou commencer à apprendre Spring, je pense que l'utilisation de Spring Boot serait recommandée. Il facilite considérablement le travail, est prêt pour la production et est rapidement largement adopté.
J'ai parfois vu des débutants poser cette question car dans STS (Spring Tool Suite) il y a deux assistants: un pour créer un projet Spring Boot et un autre pour créer un projet Spring MVC. Donc, ma recommandation serait de créer un projet Spring Boot et de choisir Web comme module.
la source
Il s'agit d'une représentation picturale montrant la différence.
Veuillez vous référer à ce lien pour plus d'informations:
Src de cette image
la source
En termes simples, il peut être déclaré comme suit:
Spring boot = Spring MVC + Auto Configuration(Don't need to write spring.xml file for configurations) + Server(You can have embedded Tomcat, Netty, Jetty server).
Et Spring Boot est un framework Opinionated, donc sa construction prenant en considération un développement rapide, moins de temps pour la configuration et un très bon support communautaire.
la source
Spring MVC
est un sous-projet du Spring Framework, ciblant la conception et le développement d'applications utilisant le modèle MVC (Model-View-Controller). Spring MVC est conçu pour s'intégrer pleinement et complètement avec Spring Framework et de manière transitoire, la plupart des autres sous-projets.Spring Boot
peut être très bien compris de cet article par l'équipe de Spring Engineering. Il est censé être d'opinion, c'est-à-dire qu'il préconise fortement un certain style de développement rapide, mais il est suffisamment bien conçu pour permettre des exceptions à la règle, si vous voulez. En bref, c'est une convention sur la méthodologie de configuration qui est prête à comprendre votre besoin de briser la convention lorsque cela est justifié.la source
Voici quelques points principaux qui différencient Spring, Spring MVC et Spring Boot:
Printemps :
Spring MVC
Spring Boot:
(Evolution comme: Spring -> Spring MVC -> Spring Boot, donc les versions plus récentes ont la compatibilité des fonctionnalités de l'ancienne version.) Remarque: Il ne contient pas tous les points.
la source
SpringBoot est en fait pré-configuré pour réduire la configuration de la chaudière et fournir le moyen le plus simple ou rapide de démarrer votre application.
SpringBoot prend le mal de tête de la configuration du développeur à lui-même plutôt qu'à Spring.
Implicitement SpringBoot est basé sur le concept de framework Spring comme bean, contrôleur, services, jpa etc.
Vous pouvez dire que SpringBoot est un wrapper de Spring.
Dans SpringBoot, le port par défaut du serveur est 8080, mais si vous souhaitez le modifier, accédez à votre application.properties et écrivez
server.port = 8084
la source
En utilisant Spring Boot, vous n'aurez pas besoin de créer de configuration. Cela se fera automatiquement lorsque vous créez un projet.
Si vous utilisez Spring MVC, vous devez créer vous-même la configuration. C'est plus compliqué, mais c'est crucial.
la source
Sans répéter la même chose dans les réponses précédentes,
j'écris cette réponse pour les personnes qui cherchent à démarrer un nouveau projet et ne savent pas quel est le meilleur cadre pour démarrer votre projet. Si vous êtes un débutant dans ce cadre, la meilleure chose que je préfère est d'utiliser Spring Boot (avec STS / Spring Tool Suite ). Parce que ça aide beaucoup. Il fait toutes les configurations de son propre chef. De plus, utilisez Hibernate avec spring-boot comme infrastructure de base de données. Avec cette combinaison, votre application sera la meilleure. Je peux garantir cela avec mes expériences.
Même c'est l'un des meilleurs frameworks pour JEE (actuellement), cela va mourir dans un proche avenir. Il existe des alternatives légères à venir. Alors, restez à jour avec votre expérience, ne vous en tenez pas à un cadre particulier. La meilleure chose est de parler couramment les concepts, pas les cadres.
la source
Pensez de cette façon:
Spring MVC est un framework basé sur le Web pour implémenter l'architecture MVC.
Spring Boot est un outil orienté vers le programmeur. Le programmeur doit se concentrer sur la programmation et l'outil doit se concentrer sur les configurations. Nous n'avons donc pas besoin de perdre notre temps à configurer un tas de xml pour créer un simple «Bonjour tout le monde».
la source
Voici les différences entre Spring Boot et Spring MVC.
la source
Spring MVC et Spring Boot existent dans un but différent. Il n'est donc pas sage de se comparer les uns aux autres comme les prétendants.
Qu'est-ce que Spring Boot?
Spring Boot est un cadre pour empaqueter l'application Spring avec des valeurs par défaut sensibles. Qu'est-ce que ça veut dire?. Vous développez une application Web à l'aide de Spring MVC, Spring Data, Hibernate et Tomcat. Comment empaqueter et déployer cette application sur votre serveur Web. À partir de maintenant, nous devons écrire manuellement les configurations, les fichiers XML, etc. pour le déploiement sur le serveur Web.
Spring Boot le fait pour vous avec une configuration Zero XML dans votre projet. Croyez-moi, vous n'avez pas besoin de descripteur de déploiement, de serveur Web, etc. Spring Boot est un cadre magique qui regroupe toutes les dépendances pour vous. Enfin, votre application Web sera un fichier JAR autonome avec des serveurs intégrés.
Si vous ne savez toujours pas comment cela fonctionne, veuillez lire le développement du cadre de microservices à l'aide de Spring Boot.
Qu'est-ce que Spring MVC?
Il s'agit d'un cadre d'application Web traditionnel qui vous aide à créer des applications Web. Il est similaire au framework Struts.
Un Spring MVC est un framework Java utilisé pour créer des applications Web. Il suit le modèle de conception Model-View-Controller. Il implémente toutes les fonctionnalités de base d'un cadre de ressort de base comme l'inversion de contrôle, l'injection de dépendance.
Un Spring MVC fournit une solution élégante pour utiliser MVC dans Spring Framework à l'aide de DispatcherServlet. Ici, DispatcherServlet est une classe qui reçoit la demande entrante et la mappe à la bonne ressource telle que les contrôleurs, les modèles et les vues.
J'espère que cela vous aide à comprendre la différence.
la source