Ich habe gerade angefangen, den Frühling zu lernen. In meinem nächsten Schritt möchte ich größere Webanwendungen entwickeln.
Jetzt frage ich mich, ob ich mit Spring Boot oder Spring MVC beginnen soll. Ich habe bereits einige Sachen gelesen, aber es ist verwirrend, weil beide ähnlich aussehen.
Was sind die Unterschiede zwischen den beiden?
Spring Boot
dann die Webfunktionalität mit erfüllen kannSpring MVC
?Spring MVC und Spring Boot sind in anderen Antworten gut beschrieben. Lassen Sie mich daher, ohne dies zu wiederholen, direkt zu den Einzelheiten springen. Frühlingsstiefel und Spring MVC sind nicht vergleichbar oder schließen sich gegenseitig aus. Wenn Sie die Entwicklung von Webanwendungen mit Spring durchführen möchten, würden Sie Spring MVC trotzdem verwenden. Ihre Frage wird dann, ob Sie Spring Boot verwenden sollen oder nicht.
Für die Entwicklung gängiger Spring-Anwendungen oder den Beginn des Lernens von Spring wird die Verwendung von Spring Boot empfohlen. Es erleichtert die Arbeit erheblich, ist produktionsbereit und wird schnell weit verbreitet.
Ich habe manchmal Anfänger gesehen, die diese Frage gestellt haben, weil es in STS (Spring Tool Suite) zwei Assistenten gibt: einen zum Erstellen eines Spring Boot-Projekts und einen zum Erstellen eines Spring MVC-Projekts. Meine Empfehlung wäre also, ein Spring Boot-Projekt zu erstellen und darin Web als Modul zu wählen .
quelle
Dies ist eine bildliche Darstellung der Darstellung von Unterschieden. Weitere Informationen finden
Sie unter diesem Link :
Src dieses Bildes
quelle
In einfachen Worten kann es angegeben werden als:
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).
Und Spring Boot ist ein Opinionated-Framework, dessen Build eine schnelle Entwicklung berücksichtigt, weniger Zeit für die Konfiguration benötigt und eine sehr gute Community-Unterstützung bietet.
quelle
Spring MVC
ist ein Teilprojekt des Spring Framework, das auf das Design und die Entwicklung von Anwendungen abzielt, die das MVC-Muster (Model-View-Controller) verwenden. Spring MVC ist so konzipiert, dass es sich vollständig und vollständig in das Spring Framework und die meisten anderen Teilprojekte integriert.Spring Boot
kann aus diesem Artikel vom Spring Engineering-Team recht gut verstanden werden . Es wird angeblich mit einer Meinung versehen, dh es befürwortet stark einen bestimmten Stil der schnellen Entwicklung, aber es ist gut genug konzipiert, um Ausnahmen von der Regel zu berücksichtigen, wenn Sie so wollen. Kurz gesagt, es handelt sich um eine Konvention über die Konfigurationsmethode, die bereit ist, Ihre Notwendigkeit zu verstehen, die Konvention zu brechen, wenn dies gerechtfertigt ist.quelle
Hier sind einige Hauptpunkte, die Spring, Spring MVC und Spring Boot unterscheiden:
Frühling :
Feder MVC
Spring Boot:
(Evolution wie: Spring -> Spring MVC -> Spring Boot, neuere Versionen sind also mit den Funktionen der alten Version kompatibel.) Hinweis: Es enthält nicht alle Punkte.
quelle
SpringBoot ist tatsächlich vorkonfiguriert, um die Kesselkonfiguration zu reduzieren und die einfachste oder schnellste Möglichkeit zum Starten Ihrer Anwendung zu bieten.
SpringBoot nimmt die Kopfschmerzen der Konfiguration vom Entwickler auf sich selbst und nicht auf Spring.
Implizit basiert SpringBoot auf dem Spring-Framework-Konzept wie Bean, Controller, Services, JPA usw.
Man kann sagen, dass SpringBoot ein Wrapper von Spring ist.
In SpringBoot ist der Port des Servers standardmäßig 8080. Wenn Sie jedoch Änderungen vornehmen möchten, gehen Sie zu application.properties und schreiben Sie
server.port = 8084
quelle
Mit Spring Boot müssen Sie keine Konfiguration erstellen. Dies erfolgt automatisch, wenn Sie ein Projekt erstellen.
Wenn Sie Spring MVC verwenden, müssen Sie die Konfiguration selbst erstellen. Es ist komplizierter, aber entscheidend.
quelle
Ohne dasselbe in früheren Antworten zu wiederholen,
schreibe ich diese Antwort für die Leute, die ein neues Projekt starten möchten und nicht wissen, welches der beste Rahmen ist, um Ihr Projekt zu starten. Wenn Sie ein Anfänger in diesem Framework sind, ist das Beste, was ich bevorzuge, Spring Boot (mit STS / Spring Tool Suite ) zu verwenden. Weil es sehr hilft. Es macht alle Konfigurationen für sich. Verwenden Sie außerdem den Ruhezustand mit Spring-Boot als Datenbankframework. Mit dieser Kombination ist Ihre Anwendung die beste. Das kann ich mit meinen Erfahrungen garantieren.
Auch dies ist eines der besten Frameworks für JEE (derzeit), das in naher Zukunft sterben wird. Es gibt leichte Alternativen. Halten Sie sich also über Ihre Erfahrungen auf dem Laufenden und halten Sie sich nicht an ein bestimmtes Framework. Das Beste ist, Konzepte fließend zu beherrschen, nicht die Frameworks.
quelle
Denken Sie so:
Feder MVC ist ein webbasiertes Framework zur Implementierung der MVC-Architektur.
Spring Boot ist ein Tool, das sich an den Programmierer richtet. Der Programmierer muss sich auf die Programmierung konzentrieren und das Tool muss sich auf die Konfigurationen konzentrieren. Wir müssen also nicht unsere Zeit damit verschwenden, eine Menge XML zu konfigurieren, um eine einfache "Hallo Welt" zu erstellen.
quelle
Im Folgenden sind die Unterschiede zwischen Spring Boot und Spring MVC aufgeführt.
quelle
Spring MVC und Spring Boot sind für den unterschiedlichen Zweck vorhanden. Es ist also nicht ratsam, sich als Konkurrenten zu vergleichen.
Was ist Spring Boot?
Spring Boot ist ein Framework zum Verpacken der Federanwendung mit sinnvollen Standardeinstellungen. Was bedeutet das?. Sie entwickeln eine Webanwendung mit Spring MVC, Spring Data, Hibernate und Tomcat. Wie packen Sie diese Anwendung und stellen sie auf Ihrem Webserver bereit? Ab sofort müssen wir die Konfigurationen, XML-Dateien usw. für die Bereitstellung auf dem Webserver manuell schreiben.
Spring Boot erledigt dies für Sie mit der Zero XML-Konfiguration in Ihrem Projekt. Glauben Sie mir, Sie benötigen keinen Bereitstellungsdeskriptor, keinen Webserver usw. Spring Boot ist ein magisches Framework, das alle Abhängigkeiten für Sie bündelt. Schließlich ist Ihre Webanwendung eine eigenständige JAR-Datei mit eingebetteten Servern.
Wenn Sie immer noch verwirrt sind, wie dies funktioniert, lesen Sie bitte die Entwicklung von Microservice Frameworks mit Spring Boot.
Was ist Spring MVC?
Es ist ein traditionelles Webanwendungsframework, mit dem Sie Webanwendungen erstellen können. Es ähnelt dem Struts-Framework.
Eine Spring MVC ist ein Java-Framework, mit dem Webanwendungen erstellt werden. Es folgt dem Entwurfsmuster Model-View-Controller. Es implementiert alle grundlegenden Funktionen eines Kernfedergerüsts wie Inversion of Control und Dependency Injection.
Eine Spring MVC bietet eine elegante Lösung für die Verwendung von MVC im Spring Framework mithilfe von DispatcherServlet. Hier ist DispatcherServlet eine Klasse, die die eingehende Anforderung empfängt und sie der richtigen Ressource wie Controllern, Modellen und Ansichten zuordnet.
Ich hoffe, das hilft Ihnen, den Unterschied zu verstehen.
quelle