Java -Bohnen im Frühlingsgerüst

Java -Bohnen im Frühlingsgerüst
In diesem Artikel werden wir lernen, das Kernkonzept der Java -Bean zu verstehen, die im Spring Framework verwendet werden.

Bohne

Java Bean ist ein zentraler Bestandteil einer Frühlingsanwendung, die ein reines Java -Objekt ist, das von einer Klasse dargestellt wird. Es ist eine Laufzeit -Einheit, die vom IOC -Container verwaltet wird.

Der IOC -Container erstellt, initialisiert, läuft und zerstört die Bean basierend auf den Anwendungsanforderungen.

Im vorherigen Artikel haben wir einen Bean -Student erstellt, den wir mit den XML- und Java -Anmerkungen konfiguriert haben.

Spring IOC -Container erstellt das Bean -Objekt mit Hilfe entweder XML -Datei oder Java -Anmerkungen, die die Metadaten bereitstellen. Das IOC verwendet diese Metadaten, um die Bean -Objekte im gesamten Anwendungskontext zu verwalten.

So erstellen Sie Java Bean

Wie wir bereits diskutiert haben, ist Java Bean eine Klasse, die private Eigenschaften, Getter und Setzer enthält. Sie können die Bohne eines gültigen Namens und eines jeden gültigen Namens wie dem Schüler erstellen. In unserem Fall ist eine Studentenbohne wie folgt:

// Student.Java

Paket com.LinuxHint.Bohnen;
Student der öffentlichen Klasse
private int id;
privater Zeichenfolge Name;
public String getName ()
Rückgabename;

public void setName (String Name)
Das.Name = Name;

public int getid ()
Rückgabe -ID;

public void setid (int id)
Das.id = id;

Konfiguration von Bohnen im Frühjahr

Spring unterstützt die folgenden drei Typen, um die Bean zu konfigurieren:

  • XML -basierte Konfiguration
  • Java @Component Annotation
  • Java @Bean Annotation

Lassen Sie uns nacheinander verstehen.

Konfigurieren Sie in der XML -Datei

Um die Bean in der XML -Datei zu konfigurieren, müssen Sie die verwenden Schild mit den erforderlichen und unterstützenden Attributen wie ID und Klasse.

Der „ApplicationContext.Die XML -Datei sieht wie folgt aus:


xmlns: xsi = "http: // www.W3.org/2001/xmlschema-instance "
XSI: Schemalocation = "http: // www.Springframework.Org/Schema/Bohnen
http: // www.Springframework.org/schema/bohnen/federn beans-3.0.xsd ">



Der Schild ist optional und erforderlich, wenn Sie statische Werte für die Bean festlegen möchten.

Beim Erstellen der Bean und das Festlegen der Metadatenkonfiguration liefern wir den Bean die folgenden optionalen Attribute wie die folgenden:

  • Der Bean -Name sollte ein voll qualifizierter Name sein wie z com.LinuxHint.Student.
  • Wir müssen den Bohnenumfang, den Rückruf usw. angeben. Um den Bohnenfluss zu verwalten.
  • Die Bohnenabhängigkeiten, die von den anderen Bohnen abhängig sind und beim Erstellen des Bean -Objekts erfordern.

Konfigurieren Sie mit der @Component Annotation

Wenn Sie die Java-basierte Annotation verwenden möchten und den XML-Code nicht gerne verwenden möchten, ist dies eine geeignete Möglichkeit, die Bean für Sie zu konfigurieren.

Hier verwenden wir die @Component Annotation mit der Schülerklasse, um die Klasse als Bohne zu markieren. Der Frühlings -IOC behandelt diese Klasse als Bohne und verwaltet sie während der Laufzeit.

Diese Annotation ist ein Stereotyp und befindet sich in die Org.Springframework.Stereotyp Paket. Die Bean sieht nach dem Hinzufügen der @Component Annotation aus wie folgt:

// Student.Java

import org.Springframework.Stereotyp.Komponente;
@Komponente
Student der öffentlichen Klasse
private int id;
privater Zeichenfolge Name;
// Getters
// Setter

Während der Verwendung dieser Annotation müssen wir das Tag im ApplicationContext verwenden.XML -Datei, damit das IOC die gesamte Komponente Ihres Projekts scannen kann.

// ApplicationContext.xml


xmlns: xsi = "http: // www.W3.org/2001/xmlschema-instance "
xmlns: context = "http: // www.Springframework.org/schema/Kontext "
XSI: Schemalocation = "http: // www.Springframework.org/schema/beans http: // www.Springframework.org/schema/bohnen/federn bohnen.xsd http: // www.Springframework.org/schema/context http: // www.Springframework.Org/Schema/Kontext/Spring-Kontext.xsd ">

Konfiguration mit @Bean Annotation

Dies ist eine weitere Möglichkeit, die Bean mithilfe der @Bean -Annotation zu konfigurieren. In diesem Fall müssen wir eine Konfigurationsklasse mit der @Configuration -Annotation erstellen und das Objekt der Bean mithilfe der @Bean -Annotation zurückgeben. Lassen Sie uns mit dem Quellcode verstehen.

Dies ist unsere Student Bean -Klasse:

// Student.Java

Student der öffentlichen Klasse
private int id;
privater Zeichenfolge Name;
// Getters
// Setter

Dies ist unsere Konfigurationsklasse, die ein Bean -Objekt zurückgibt:

// Springconfig.Java

import org.Springframework.Kontext.Anmerkung.Bohne;
import org.Springframework.Kontext.Anmerkung.Aufbau;
Import com.LinuxHint.Bohnen.Student;
@Aufbau
öffentliche Klasse Springconfig
@Bohne
öffentliche studentische studentbean ()

Neue Student zurückgeben ();

All dies sind die gültigen Möglichkeiten, die Bean in der Springanwendung zu konfigurieren und zu erstellen. Sie können allen dieser befolgen, aber der modernste Ansatz ist die Annotationen-basierte Konfiguration, die entweder die @Component- oder @Bean-Annotation verwendet.

Bean Definition Eigenschaften

Das XML -Tag unterstützt mehrere Attribute, von denen einige hier aufgeführt sind. Sie können diese Tabelle verweisen, um die unterstützten Eigenschaften von Bean zu überprüfen und zum Konfigurieren eines Bean -Objekts zu verwenden.

Name des Anwesens Knapp
Klasse Es gibt den Klassennamen für das Bean -Objekt an.
Name Es gibt den eindeutigen Namen für das Bean -Objekt an.
Umfang Wir können dieses Attribut verwenden, um den Bereich wie Prototyp oder Singleton anzugeben.
Konstruktorargumente Wir können es verwenden, um die Konstruktor-basierte Abhängigkeitsinjektion in der Anwendung anzugeben.
Name des Anwesens Knapp
Eigenschaften Es wird verwendet, um die Eigenschafts-Abhängigkeitsinjektion festzulegen.
AutoWiring -Modus Für die Bean -Autoverdrahtung.
Mitarbeiter und fauler Initialisierungsmodus Zum Einstellen der faulen Bean -Initialisierung in der Anwendung.
Initialisierungsmethode Um die Methode festzulegen, die zum Zeitpunkt der Bean -Initialisierung in der Anwendung ausgeführt wird.
Zerstörungsmethode Eine Methode, die vor dem Zerstören des Bean -Objekts ausgeführt wird.

Lassen Sie uns einige Attribute des Tags beim Konfigurieren der Bean verstehen.

Das ID- und Klassenattribut, das wir bereits im Artikel gesehen haben. Lassen Sie uns also mit dem Lazy-Init und den anderen erkunden.

Faule Bean -Initialisierung

Um eine Bohne faul zu deklarieren, können wir das faul-Init-Attribut verwenden, das dem IOC zum Zeitpunkt der Initialisierung nicht erstellt, um die Bean nicht zu erstellen.



Festlegen der Init -Methode für Bean

Um eine Methode bei der Initialisierung einer Bohne auszuführen, liefert Spring die Init-Method Attribut, das die Methode angibt.



Festlegen der Zerstörungsmethode für Bean

In ähnlicher Weise können wir die Methode angeben, die in der Bohne Zerstörungszeit ausgeführt wird. Zu diesem Zweck verwenden wir das Zerstörungs-Methoden-Attribut.



Abschluss

In diesem Artikel haben wir das Java -Bean -Konzept mit mehreren Konfigurationstechniken eingehalten. Im nächsten Artikel werden wir seinen Lebenszyklus und seine nützlichen Methoden lernen.