Was ist Spring Framework? - Weg zu einer effizienten Entwicklung



Dieser Blog über Is Spring Framework spricht über das weit verbreitete Java Framework - Spring. Außerdem wird anhand von Beispielen erläutert, warum und wie Spring Framework verwendet wird.

In der heutigen schnelllebigen Welt brauchen wir alles, um schnell zu sein. Wir möchten uns nicht zu lange mit einer Arbeit beschäftigen, sondern mit Reisen, Einkaufen, Lernen oder Arbeiten. Wenn es um die Codierung geht, möchten wir, dass unsere Anwendungen in kürzester Zeit entwickelt werden und gleichzeitig die volle Effizienz bieten. Wir haben es vielleicht eilig, aber wir können weder Kompromisse bei unserer Qualität eingehen, noch wollen wir uns zu sehr anstrengen. Was ist die Lösung? Frameworks funktionieren in dieser Situation am besten. Es gibt verschiedene Frameworks auf dem Markt, von denen nur wenige verwendet werden: Spring, Hibernate, Struts usw. In diesem Blog erfahren Sie, was Spring Framework ist und warum es auf dem Markt so beliebt ist.

Bevor wir beginnen, werfen wir einen Blick auf die Themen, die ich in diesem Blog diskutieren werde:





Java Frameworks

Warum sollten wir uns für Frameworks entscheiden?Lasst unsverstehe es mit unserem Freund, Coddy .

Coddy im Problem - Was ist Spring Framework - Edureka!



Coddy erhält die Aufgabe, eine Anwendung zu entwickeln, aber die zugewiesene Zeit reicht nicht aus, um sie fertigzustellen. Er muss selbst viele Codezeilen (LOC) schreiben. Es ist sehr zeitaufwändig und anstrengend. Er ist verwirrt, was er tun soll! Wo soll er anfangen!

Coddy beginnt über eine Lösung für sein Problem nachzudenken. Er braucht etwas, das schnell und effizient ist, spart Zeit und Mühe, wie etwas Fertiges.



Plötzlich fällt ihm die Idee ein, Frameworks zu verwenden. Frameworks sind schnell, effizient und leicht. Es handelt sich um große Mengen vordefinierter Codes, die wir leicht zu unserem eigenen Code hinzufügen können, um ein bestimmtes Problem zu lösen.

Er codiert mit dem Framework. Überraschenderweise passte der Code leicht zum Framework.

Coddy Jetzt kann er schneller codieren und seine Bewerbung innerhalb des vorgegebenen Zeitrahmens abschließen. Darüber hinaus ist er frei davon, Tausende von Zeilen nicht funktionierenden Codes zu schreiben.

Nach der Bereitstellung der Anwendung, die mit dem Framework entwickelt wurde, stellte er fest, dass sie mit viel höherer Geschwindigkeit ausgeführt wurde und ihr Durchsatz im Vergleich zu anderen Anwendungen, die ohne Verwendung des Frameworks entwickelt wurden, ebenfalls zunahm.

Beginnen wir nun mit den Java Frameworks.

Wie kamen Java Frameworks zur Existenz?

Ende der 90er Jahre wurden die Anwendungen unter Verwendung von JEE-Standards weit verbreitet. Die Prämisse von J2EE war plattformübergreifend / herstellerübergreifend. Wenn Sie gemäß den J2EE-Standards codieren können, können Sie Ihre Anwendung auf jedem J2EE-Anwendungsserver unabhängig von der Plattform bereitstellen. Das Ausführen Ihres Codes auf einem beliebigen Anwendungsserver bietet Ihnen viele Vorteile wie Transaktionsverwaltung, Messaging, Mailing, Verzeichnisschnittstelle usw. Da dies auf dieser Welt jedoch nicht einfach ist, hatte die Arbeit mit J2EE auch einige Schwierigkeiten.

  • SehrKomplex : Enterprise Java Bean wurde entwickelt, um die Komplexität in J2EE-Anwendungen zu reduzieren. Das Ziel der Umsetzung ist jedoch nicht erreicht worden. Der Grund dafür ist, dass beim Schreiben einer Komponente eine Reihe von XML-Dateien, Heimschnittstellen, Remote- / lokalen Schnittstellen usw. geschrieben werden müssen.
  • Problem beim Nachschlagen: Wann immer eine Komponente von einer anderen Komponente abhing, musste sie nach den Komponenten suchen, von denen sie selbst abhing. Diese Komponentensuche erfolgt nur nach Namen, daher wurde der Name der Abhängigkeit in der Komponente fest codiert.
  • Schweres Gewicht: Als einAlle Funktionen wie Clustering, Remoting usw. wurden unterstützt. Sie müssen sie konfigurieren, unabhängig davon, ob Sie sie benötigen oder nicht. Dadurch werden Ihre Anwendungen aufgebläht.

So entstanden Java Frameworks. Java Frameworks sind nichts anderes als große Mengen vordefinierten Codes, die Sie auf Ihren eigenen Code anwenden können, um Ihr Problem in einer bestimmten Domäne zu lösen. Sie können ein Framework verwenden, indem Sie seine Methoden, die Vererbung, 'Callbacks', Listener oder andere Implementierungen des Frameworks aufrufen Beobachter Muster.

Lassen Sie es uns durch eine bildliche Darstellung verstehen:

Aber wie genau reduzieren sie unsere Arbeit und machen unsere Codes effizient? Um es zu verstehen, gehen Sie wie folgt vor VorteileundNachteiledieser Rahmenbedingungen. Beginnen wir mit dem Vorteile .

Effizienz:

Aufgaben, deren Erstellung in der Regel Stunden und Hunderte von Codezeilen dauert, können jetzt mit vorgefertigten Funktionen in wenigen Minuten erledigt werden. Die Entwicklung wird viel einfacher. Wenn es also viel einfacher ist, ist es viel schneller und anschließend effektiver.

Sicherheit:

Ein häufig verwendetes Framework wird im Allgemeinen groß seinSicherheitAnwendungen. Der große Vorteil ist derNachbarschafthinter diesem Framework, in dem Benutzer normalerweise langlebige Tester sind. Wenn Sie eine Sicherheitslücke oder eine Sicherheitslücke finden, können Sie auf die Website des Frameworks gehen und diese informieren, damit diese behoben werden kann.

Kosten:

Die meisten gängigen Strukturen sind kostenlos und helfen dem Entwickler, schneller zu codieren. Wenn die Codierung schneller erfolgt, sind die Kosten für den Endkunden in jeder Hinsicht geringer, sei es Zeit oder Aufwand. Darüber hinaus sind auch die Wartungskosten gering.

Unterstützung:

Wie jedes andere verteilte Tool enthält ein Framework im Allgemeinen Dokumente, eine Support-Gruppe oder Online-Foren mit großer Community, in denen Sie schnelle Antworten erhalten können.

Trotz all dieser Vorteile haben Java Frameworks einige Nachteile , mögen:


Beschränkungen:

Das grundlegende Verhalten des Frameworks kann nicht geändert werden. Dies bedeutet, dass Sie bei der Verwendung eines Frameworks dessen Einschränkungen beachten und so arbeiten müssen, wie es erforderlich ist. Daher müssen Sie sicherstellen, dass Sie ein Framework auswählen, das Ihren Anforderungen entspricht.

Code ist öffentlich:

Da das Framework für alle leicht verfügbar ist, iEs wird auch Menschen mit schlechten Absichten angeboten. Es kann studiert werden, um zu wissen, wie Dinge funktionieren, und um Fehler zu entdecken, die gegen Sie ausgenutzt werden können.

Benutzerdefiniert Eigenschaften::

Wenn Sie ein Framework verwenden, wissen Sie nur sehr wenig über die dahinter stehende Sprache, da die darin enthaltenen Funktionen benutzerdefiniert sind.Wenn Sie benutzerdefinierte Funktionen verwenden, müssen Sie diese höchstwahrscheinlich gemäß den Standards des Frameworks verwenden, die vom ursprünglichen Konzept abweichen können.

JetztDasSie kennen die Vor- und Nachteileder Frameworks,Wählen Sie Ihr Framework entsprechend Ihren Anforderungen. Es gibt verschiedene Arten von Frameworks auf dem Markt. Das folgende Diagramm zeigt einige davon:

In diesem Blog konzentrieren wir uns also auf Spring Framework.

Was ist Spring Framework?

Hier stellt sich die Frage: Was ist Spring Framework?

Spring Framework ist ein leistungsstarkes, leichtes Framework für die Anwendungsentwicklung, das für Enterprise Java (JEE) verwendet wird.

Die Kernfunktionen des Spring Framework können bei der Entwicklung jeder Java-Anwendung verwendet werden.Es kann beschrieben werden alsvollständiger und modularer Rahmen. Das Spring Framework kann für alle Layer-Implementierungen einer Echtzeitanwendung verwendet werden. Im Gegensatz zu Struts und Hibernate kann es auch für die Entwicklung einer bestimmten Schicht einer Echtzeitanwendung verwendet werden. Mit Spring können wir jedoch alle Schichten entwickeln.

Hier ging es darum, was Spring Framework ist, aber wie es entwickelt wurde? Nun, dahinter steckt eine interessante Geschichte. Werfen wir einen Blick auf die Geschichte und Herkunft von Spring Framework.

Im Oktober 2002 Rod Johnson Der australische Computerspezialist schrieb ein Buch mit dem Titel Expert One-on-One J2EE Design and Development. In diesem Buch schlug er eine einfachere Lösung vor, die auf gewöhnlichen Java-Klassen (POJO) und Abhängigkeitsinjektion basiert. Er schrieb über 30.000 Zeilen Infrastrukturcode, die eine Reihe wiederverwendbarer Java-Schnittstellen und -Klassen für die Entwicklung der Anwendung enthielten. Um den Februar 2003 herum begannen Rod, Jürgen und Yann mit der Zusammenarbeit am Frühjahrsprojekt. Der Name 'Frühling' wurde gegeben, da dies einen Neuanfang nach 'Winter' des traditionellen J2EE bedeutete.

Es folgt die Zeitleiste, die über wichtige Veröffentlichungen in der Geschichte des Frühlings gezeigt wird:

Es wurde als Referenz zum 21. Jahrhundert Interface 21 genannt und unter der Apache 2.0-Lizenz veröffentlicht.
Dies war der erste Meilenstein. Das Spring Framework hat sich seit dieser Version schnell weiterentwickelt. Interface21 unterstützte AspectJ parallel zu Spring Framework.
Neue Funktionen wurden hinzugefügt - erweiterbare XML-Konfigurationen, Unterstützung für Java 5 und dynamische Sprachen, IoC-Erweiterungspunkte und AOP-Verbesserungen.
Neue Funktionen wurden hinzugefügt - Unterstützung für Java 6 / JEE5, Anmerkungskonfigurationen, automatische Erkennung von Komponenten in Klassenpfaden und OSGi-kompatible Bundles.
Neue Funktionen wurden hinzugefügt - Unterstützung für reorganisierte Modulsysteme, SpEL, JavaConfig, eingebettete Datenbanken, REST-Unterstützung und Unterstützung für Java EE 6.
Das Spring Data Commons Project wurde veröffentlicht. Später im Jahr 2012 verließ Rod Johnson das Spring-Team.
Alle Frühjahrsprojekte wurden auf Pivotal verlagert. Neue Funktionen wurden hinzugefügt - volle Unterstützung für Java 8, Websockets, höhere Bibliotheksabhängigkeiten von Drittanbietern, grooviges DSL für Bean-Definitionen.
Es war kompatibel mit Java 6, 7 und 8, wobei der Schwerpunkt auf Kernverbesserungen und modernen Webfunktionen lag.
Es wird die letzte Generation seininnerhalb der allgemeinen Systemanforderungen für Spring 4. 4.3.8 ist die aktuelle Version.

Warum Spring Framework?

Unten sehen Sie eine Tabelle, die den Vergleich zwischen Spring und verschiedenen anderen Frameworks zeigt.

Unten sehen Sie eine Grafik, die auf einer Umfrage basiert.Stand Mai 2016. Wie Sie der Grafik entnehmen können, ist Spring Framework in seiner Domäne sehr beliebt und hat seine Position auf t beibehaltenseit 2014.

Gründe für Spring FramePopularität der Werke

Es gibt im Allgemeinen drei Hauptgründe für die Beliebtheit von Spring Framework.

  1. Einfachheit
  2. Testbarkeit
  3. Lose Kopplung

Lassen Sie uns diese Themen im Detail diskutieren.

Einfachheit: Spring Framework ist einfach, da es nicht invasiv ist, da es POJO- und POJI-Modelle verwendet.

  • POJO (einfache alte Java-Objekte): A.Eine Java-Klasse, die nicht mit einer Technologie oder einem Framework gekoppelt ist, wird aufgerufen '' POJO '' .
  • POJI (Plain Old Java Interfaces): Eine Java-Schnittstelle, die mit keiner Technologie oder Frame gekoppelt ist, wird aufgerufen '' POJI '' .

Testbarkeit :: Zum Schreiben der S.BambusAnwendung, Server ist nicht obligatorisch. Für Streben und EJB-Anwendungen benötigen Sie jedoch einen Server, wenn Sie die Anwendung testen möchten. Möglicherweise müssen in der Quelle viele Änderungen vorgenommen werden, um diese Änderungen jedes Mal anzuzeigen, wenn Sie den Server neu starten müssen. Dies wird mühsam und zeitaufwändig. Im Falle vonSpring Framework verfügt über einen eigenen Container zum Ausführen der AnwendungKationen.

Lose Kopplung : Spring Framework ist lose gekoppelt, da es Konzepte wie Dependency Injection, AOP usw. enthält. Diese Funktionen tragen dazu bei, die Abhängigkeit zu verringern und die Modularität innerhalb des Codes zu erhöhen. Lassen Sie uns dies anhand eines Beispiels verstehen.

Hier habe ich eine Bike-Schnittstelle, die eine start () -Methode hat. Es wird weiter von drei Klassen implementiert, nämlich: Yamaha, Honda und Bajaj.

öffentliche Schnittstelle Bike {public void start ()}

Hier erstellt ein Klassenfahrer ein Objekt einer beliebigen Klasse, die die Bike-Schnittstelle implementiert.

Klassenfahrer {Bike b public void setBike (Bike b) {this.b = b} void Ride () {b.start ()}}

Jetzt kann der Spring Framework-Container je nach Anforderung ein Objekt einer beliebigen Klasse einfügen, die die Bike-Schnittstelle implementiert. So funktioniert lose Kupplung.

Spring Framework-Architektur

Wie Sie dem obigen Diagramm entnehmen können, verfügt Spring über eine Schichtarchitektur, die aus verschiedenen Modulen besteht, die ihre eigene Funktionalität haben. Diese Module werden in folgende Ebenen verallgemeinert:

  • Kernbehälter
  • Datenzugriff / Integration
  • Netz
  • AOP (Aspect Oriented Programming)
  • Instrumentierung
  • Prüfung.

Sie fragen sich vielleicht, welchen Vorteil Spring Framework für eine mehrschichtige Architektur hat. Lassen Sie uns dies anhand der folgenden Punkte herausfinden:

  • Spring Framework organisiert Ihre Objekte der mittleren Ebene effektiv.
  • Unabhängig von der Laufzeitumgebung können die Konfigurationsverwaltungsdienste von Spring Framework in jeder Architekturebene verwendet werden.
  • Spring Framework behandelt die Konfiguration in der gesamten Anwendung auf konsistente Weise. Dadurch müssen keine verschiedenen Dateiformate mit benutzerdefinierten Eigenschaften verwendet werden.
  • Spring Framework ist so konzipiert, dass damit erstellte Anwendungen von möglichst wenigen APIs abhängen.
  • Wegen der Verwendung von Schnittstellen,Spring Framework erleichtert eine gute Programmierpraxis.

Um vollständig zu verstehen, was Spring Framework ist, sehen wir uns eine einfache Spring Framework-Anwendung an. Befolgen Sie die fünf einfachen Schritte:

Schritt I: Erstellen der Bean-Klasse

Paket org.edureka.firstSpring öffentliche Klasse StudentBean {Stringname public String getName () {Rückgabenname} public void setName (Stringname) {this.name = name} public void displayInfo () {System.out.println ('Hallo: '+ name)}}

Schritt II: Erstellen Sie eine XML-Datei

 

Schritt III: Erstellen Sie die Hauptklasse

Paket org.edureka.firstSpring import org.springframework.context.ApplicationContext import org.springframework.context.support.ClassPathXmlApplicationContext öffentliche Klasse StudentDemo {public static void main (String [] args) {ApplicationContext appCon = new ClassPathXmlApplicationContext ' ) StudentBean factory = (StudentBean) appCon.getBean ('studentbean') factory.displayInfo ()}}

Schritt IV: Laden Sie die JAR-Dateien

Laden Sie die folgenden JAR-Dateien.

  • commons-logging-1.2.jar
  • javax.servlet-api-3.1.0.jar
  • jstl-1.2.jar
  • spring-aop-4.2.2.RELEASE.jar
  • Spring-Beans-4.2.2.RELEASE.jar
  • spring-context-4.2.2.RELEASE.jar
  • Federkern-4.2.2.RELEASE.jar
  • spring-expression-4.2.2.RELEASE.jar
  • spring-web-4.2.2.RELEASE.jar
  • spring-webmvc-4.2.2.RELEASE.jar

HINWEIS: Falls Sie die JAR-Dateien benötigen, kommentieren Sie unten.

Schritt V: Führen Sie das Programm aus

Führen Sie das Programm auf Ihrem Server aus, um die Anwendung zu testen.

Ich hoffe, ich konnte klar erklären, was Spring Framework ist, wie genau es funktioniert und wofür es verwendet wird. Sie verweisen auch auf das Video zu „What Is Spring Framework“, in dem der Kursleiter die in diesem Blog behandelten Themen zusammen mit praktischen Demonstrationen beschreibt.

Was ist Spring Framework in Java? Spring Framework Tutorial | Edureka

Wenn Sie mehr über das Spring Framework erfahren möchten, bleiben Sie auf dem Laufenden mit meiner Blogserie, denn ich werde einen weiteren Blog über erstellen die im Frühjahr über fortgeschrittenere Konzepte sprechen wird.

Wenn Sie Spring lernen und es während der Entwicklung von Java-Anwendungen verwenden möchten, lesen Sie die von Edureka, einem vertrauenswürdigen Online-Lernunternehmen mit einem Netzwerk von mehr als 250.000 zufriedenen Lernenden auf der ganzen Welt.

Ein Sortieralgorithmus kann verwendet werden, um einen Satz von ________ in ________ Reihenfolge anzuordnen.

Hast du eine Frage an uns? Bitte erwähnen Sie es in den Kommentaren und wir werden uns bei Ihnen melden.