Beste Antwort
Die meisten Antworten im Internet sind sehr vage und können daher für Anfänger verwirrend sein.
Die branchenweite Spring-Version ist Spring 3.0. Änderungen gegenüber der vorherigen Version, dh 2.5, bestehen aus (unterstütztem JDK 5): –
Spring MVC-Testframework – Asynchrone MVC-Verarbeitung unter Servlet 3.0 – Benutzerdefinierte @ Bean-Definitionsanmerkungen in @ Konfigurationsklassen – @Autowired und @Value, die als Meta-Annotationen verwendet werden sollen – Verfeinerungen der Parallelität im gesamten Framework – Laden von WebApplicationContexts in das TestContext-Framework – JCache 0.5 (JSR-107)
Spring 2.X bestand hauptsächlich aus 6 Module, unterstützt JDK 4: –
- Spring Core-Modul
- Spring Context [J2EE]
- Spring DAO-Modul [Spring JDBC]
- Spring ORM-Modul
- Spring AOP [Aspektorientierte Programmierung]
- Spring WEB-MVC-Modul
Oben unterscheidet sich von der vorherigen Version Spring 1.x mit 7 Modulen.
Antwort
Einige Fakten zuerst prüfen:
- Sowohl Spring Framework als auch Spring Boot werden zum Erstellen von Java Enterprise-Anwendungen verwendet.
- Dies ist möglich Alles mit Spring Framework, was mit Spring Boot erreicht werden kann.
Warum dann Spring Boot ?
Um dies zu verstehen, muss man die Designphilosophie verstehen, die hinter der Erstellung von Spring Boot steht. Wenn Sie die Designphilosophie / das Designziel verstehen, kennen Sie automatisch den Unterschied zwischen diesen.
Ich werde einige Highlights dieser Designziele nennen:
- Konvention über Konfiguration Es handelt sich um ein Software-Design-Paradigma, das von vielen Software-Frameworks / -Systemen verwendet wird und dem Benutzer offensichtlich sinnvolle Standardeinstellungen bietet, indem es die folgenden Anweisungen befolgt Best Practices und ohne an Flexibilität zu verlieren. Die Auswirkungen dieses Entwurfsprinzips sind tiefgreifend und umfassen: Gute Architektur, Wartbarkeit, einheitliche und standardmäßige Produkterstellung, geringere Anzahl von Entscheidungen für den Benutzer, Steigerung der Gesamtproduktivität, schnellere Entwicklung usw., um nur einige zu nennen. Die Idee ist, dass System / Framework ihren Benutzern [gemäß Konvention] sinnvolle Standardeinstellungen bietet, und wenn man von diesen Standardeinstellungen abweicht / abweicht, muss nur man Konfigurationsänderungen vornehmen. Nehmen wir einige Beispiele : Beispiel 1: (Bereitstellung Vereinfacht) Angenommen, der Benutzer erstellt nach Spring MVC eine Webanwendung. Dann ist es offensichtlich, dass der Benutzer einen Container wie Tomcat benötigt, um diese Anwendung bereitzustellen. Wenn Ihr Framework eingebettetes Tomcat bereitstellen kann, muss der Benutzer keine Zeit und Mühe mit der Installation und Konfiguration seiner Tomcat-Instanz verschwenden. Wenn man dieses Standardverhalten nicht möchte, sollte das Framework auch dafür flexibel sein. Für Sie arbeiten: Achten Sie auf die abhängigen Gläser von Spring-Boot-Starter-Web artefaktId
org.springframework.boot
Jetzt haben wir die Designphilosophie hinter der Erstellung von Spring Boot erörtert. Was macht es eigentlich? Wie hilft es?
- Beschleunigen Sie die Entwicklung
- Entwickler investieren ihre Zeit in die Erstellung von Lösungen, die wirklich wichtig sind und Werte hinzufügen, anstatt Stunden [sowohl Aufwand als auch Zeit] für die Einstellung zu verschwenden ihre Entwicklungsumgebung, Projekte, Konfigurationsänderungen und das Schreiben von Boilerplate-Codes verbessern
In der Hoffnung, dass ich den Unterschied zwischen Spring Framework und Spring Boot aus der Designperspektive erklären kann.