..


Sponsored Links

Core-Container - Spring-Beans

In diesem Abschnitt analysieren wir die Konfiguration durch die IOC-Container XML-Metadaten.
Für eine Bohne instazionare nell'IoC contanier genug für uns nur zwei infomarzioni:

  • Qualified Name der Klasse, der das Objekt gehört
  • Eine eindeutige ID, um die Bohne in den Kontext zugeordnet werden
Beispiel:





 <beans id="myBean" class="com.MyClass"/>









 <beans class="com.MyClass1"/>



Das zweite Beispiel ist bewusst das id-Attribut weggelassen, denn wenn Sie ihn nicht verwenden eine zufällige Frühling erzeugt. Allerdings ist es empfehlenswert, dass Sie immer angeben, eine ID, so können Sie die Bohne Referenz, wenn nötig. Eine Bohne kann mehrere Kennungen, die durch das name-Attribut oder dem Alias-Tag hinzugefügt werden können:
 



 <beans id="myBean" class="com.MyClass" name="alias1 alias2" />

 
oder
 



 <alias name="myBean" alias="alias1" />

 

Um eine Instanz der Spring-Beans mit drei Methoden:

  • Durch den Hersteller
  • Durch eine Factory-Methode
  • Durch eine Bean-Factory
Wenn Sie nicht angeben, eine Methode, um die Bohnen zu instanziieren, Spring den Standardkonstruktor verwendet, so dass jede Bean muss die Standard-construttore haben (später werden wir sehen, wie eine Bohne mit einem Konstruktor mit Parametern instanziiert).
Wenn Sie eine Factory-Methode, die typisch für verwenden möchten ein Singleton , müssen Sie die Fabrik-Methode-Attribut verwenden.





 {Public class FactoryMethodBean





  



 private static instance = neue FactoryMethodBean FactoryMethodBean ();





  



 Privat FactoryMethodBean () {}





  



 public static FactoryMethodBean getInstance () {



    



 Rückkehr Instanz;



  



 }









 }



und nell'applicationContext. xml
 



 <bean id="factoryMethodExample" class="it.mrwebmaster.singleton.FactoryMethodBean" factory-method="getInstance"/>

 

Die letzte Methode der Instanziierung verwendet, zusätzlich zu den Factory-Methode, eine Bohne Fabrik, die typisch für die ist Service Locator .






 FactoryBean {public class





  



 Privat ExampleBean ehemaligen;





  



 öffentlichen FactoryBean () {



    



 super ();



    



 Ehemalige ExampleBeanImpl = new ();



  



 }





  



 öffentlichen ExampleBean getExampleBean () {



    



 Rückkehr ex;



  



 }









 }



und nell'applicationContext. xml





 <bean id="factoryBean" class="it.mrwebmaster.factory.FactoryBean" />









 <bean id="exampleBean" class="it.mrwebmaster.factory.ExampleBean" factory-bean="factoryBean" factory-method="getExampleBean"/>



Scopes

Eine wichtige Eigenschaft einer Bean ist ihr Anwendungsbereich, die den Lebenszyklus definiert. Frühling unterstützt fünf Arten von Umfang:

  • Singleton, schafft eine einzelne Instanz der Bean in den Container, der von allen anderen Bohnen geteilt wird.
  • Prototypen, die erforderlich ist jedes Mal eine besondere Bohne wird ein neues instanziiert werden, dh jede andere Bohne, die zu einem Prototyp scoped Bohnen bezieht, wird eine eigene Instanz haben.
  • Anfrage für jede HTTP-Anforderung wird eine Instanz dieser Bean erzeugt
  • Sitzung ist für jede HTTP-Sitzung eine Instanz dieser Bean erzeugt
  • global-Sitzung sollten nur bei Anwendungen, die Nutzung von Portlets, die in das Konzept des globalen Session zwischen den verschiedenen Portlets ist zu verwenden.

Die Singleton-und Prototypenbau Bereiche sind für alle ApplicationContext als Wunsch-Sitzung, globale Sitzung und sind nur für die WebApplicationContext gültig.

Wenn das scope-Attribut nicht angegeben ist, wird die Bohne Singleton Umfang standardmäßig.

Zusätzlich zu diesen Bereichen gibt es ein Sechstel, aber der Umfang Thread ist nicht standardmäßig aktiviert. Im Frühjahr können Sie benutzerdefinierte Bereiche, aber ist es, dem Leser die Tiefe des Themas nach links.

Spring Java-Führer
E-Learning
Linux (Kurs) Linux (Kurs)
Ein vollständiger Reiseführer von Open-Source-System. Von 49 €.
PHP (Kurs) PHP (Kurs)
Vollständige natürlich für die Erstellung dynamischer Websites. Von 49 €.
Ruby und Ruby on Rails (Kurs) Ruby und Ruby on Rails (Kurs)
Neues Software-und Web-Anwendungen mit Ruby und RoR. Von 39 €.
Sponsored Links