Java / Spring – Die Bohnenfabrik

Nachdem wir alle meine Vorbereitungs- Tutorials für das Spring Framework durchgearbeitet haben , werden wir endlich verstehen, was Spring als solches tut. Wenn Sie dieses Tutorial lesen und sich verlaufen, empfehle ich Ihnen, diese 4 Tutorials in dieser Reihenfolge zu lesen:

  • Java / Spring – Inheritance, Polymorphism und Dependency Injection
  • Java / Spring – Vererbung, Polymorphismus und Abhängigkeitsinjektion – Teil 2
  • Java / Spring – Programmierschnittstellen
  • Investition der Kontrolle und Einspeisung von Abhängigkeiten in Java / Spring

Sobald Sie diese Konzepte verstanden haben, können Sie mit diesem Lernprogramm fortfahren. Zu Beginn dieses Tutorials werden wir darüber sprechen, wie Spring funktioniert.

Was ist Frühling?

Der Frühling ist ein Container mit Bohnen (ich werde dieses Wort in diesem und den folgenden Tutorials verwenden, um auf diese Art von Struktur zu verweisen). Eine Bohne ist eine Komponente von wiederverwendbarer Software. In Java ist ein Bean ein Objekt, das zur Erfüllung einer bestimmten Funktion vorhanden ist, und es ist auch die Klasse, zu der dieses Objekt gehört. Beans in Java werden aus Beschreibungen erstellt, die nicht unbedingt Teil des Hauptanwendungscodes sind. Solche Beschreibungen sind normalerweise in XML-Dateien enthalten.

Wenn Sie Spring verwenden, wird der Lebenszyklus jeder Bean vollständig vom Spring-Container beeinflusst. Er ist dafür verantwortlich, sie zu erstellen, zu verwalten und nach einem vorgegebenen Muster zu löschen, das sich in einer XML-Datei innerhalb der Java-Klasse in befindet von Anmerkungen oder im Wesentlichen in jedem Dateityp, der für seine Definition einem bestimmten Format folgt.

Auf diese Weise bedeutet das Konzept von Control Inversion, dass Spring die Objekte erstellt und so konfiguriert, dass sie eine bestimmte Funktion erfüllen (gemäß dem Standardmuster) und sie dann an die Hauptanwendung übermitteln. Später ist Spring dafür verantwortlich, sie zu zerstören oder zu einem späteren Zeitpunkt in der Anwendung wiederzuverwenden. Dazu verwendet er ein bestimmtes Entwurfsmuster.

See also  Erstellen Sie eine lustige Fotomontage

Entwurfsmuster: Fabrik-Methode

Ein Entwurfsmuster vom Factory-Typ ist dadurch gekennzeichnet, dass es keine bestimmte Objektklasse zurückgibt, sondern ein Objekt, das eine Schnittstelle implementiert oder von einer bestimmten Klasse erbt. Auf diese Weise kann die Fabrik praktisch alles zurückgeben, während sie das spezifische Objekt “herstellen” kann. Im Fall von Spring gibt die Factory-Methode ein Objekt vom Typ Object zurück , das anschließend in den Objekttyp umgewandelt wird, der von der Hauptanwendung benötigt wird.

Insbesondere ruft die Hauptanwendung die Factory-Methode auf, um ein bestimmtes Objekt bereitzustellen, das nicht von Spring gesteuert wird, sondern zu Spring gehört, sodass es verwendet werden kann, ohne die Verantwortung für das Objekt zu übernehmen. Auf diese Weise ist Spring IMMER für den Lebenszyklus des Objekts verantwortlich.

Patron Fabrica.jpg

Auf diese Weise verwaltet Spring das Konzept der Investitionskontrolle und der Abhängigkeitsinjektion. Im Prinzip erstellt man die Beans, die Sie in Ihrem Programm benötigen, in Form einfacher Java-Klassen mit Attributen, Gettern und Setzern. Anschließend erstellen Sie eine Konfigurationsdatei, die für die Erstellung der spezifischen POJOs (Plain Old Java Objects) verantwortlich ist, die im gesamten Programm verwendet werden, und schließlich überlassen Sie Spring den gesamten Lebenszyklus all dieser Objekte der Zeit

Diese Struktur ist sehr praktisch, um den Code mit “gefälschten” Objekten zu testen. Sie dient auch dazu, aktive Dienste zu verwalten, die über das Netzwerk aufgerufen werden, Aspekte zu verwenden und unzählige andere Dinge. Auf der Seite ” Frühling ” können Sie alle Projekte überprüfen, die aus diesem Framework hervorgegangen sind. Ich hoffe, Sie fanden es interessant, vergessen Sie nicht, Ihre Kommentare zu hinterlassen. Bis zum nächsten Mal!

See also  Entwicklungstools für AngularJS

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *