..
I detta avsnitt analyserar vi konfiguration via IOK behållaren XML-metadata.
För en böna instazionare nell'IoC contanier nog för oss bara två infomarzioni:
<beans id="myBean" class="com.MyClass"/> <beans class="com.MyClass1"/>Det andra exemplet är medvetet utelämnat id-attribut, för om du inte anger den genererar ett slumpmässigt våren. Det är dock rekommenderat att du alltid anger ett id, så du kan referera till böna om det behövs. En böna kan ha flera identifierare som kan läggas till genom namnet attribut eller av alias tag:
<beans id="myBean" class="com.MyClass" name="alias1 alias2" />eller
<alias name="myBean" alias="alias1" />
För att instansiera våren bönorna med tre metoder:
{Public class FactoryMethodBean
privata statisk instans = new FactoryMethodBean FactoryMethodBean ();
Privat FactoryMethodBean () {}
public static FactoryMethodBean getInstance () {
tillbaka exempel;
}
}
och nell'applicationContext. xml
<bean id="factoryMethodExample" class="it.mrwebmaster.singleton.FactoryMethodBean" factory-method="getInstance"/>
Den sista metoden för instansiering används, förutom till fabriken metod, en böna fabrik, som är typiskt för Service Locator .
FactoryBean {public class
Privat ExampleBean förra;
offentliga FactoryBean () {
super ();
Tidigare ExampleBeanImpl = new ();
}
offentliga ExampleBean getExampleBean () {
retur ex;
}
}
och 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"/>
En viktig egenskap hos en böna är dess räckvidd, som definierar livscykeln. Våren stöder fem typer av omfattning:
Singleton och omfattningar prototyp finns tillgängliga för alla ApplicationContext som begäran session globala session och är giltiga endast för WebApplicationContext.
Om omfattningen attributet inte anges blir bönor singleton omfattning som standard.
Utöver dessa omfattningar det finns en sjätte, men omfattningen tråden är inte aktiverat som standard. Under våren kan du skapa anpassade omfattningar, men lämnas åt läsaren djupet i detta ämne.
| |
Linux (kurs)
Komplett av öppen källkod-system. Från 49 €. |
| |
PHP (kurs)
Fullständig kurs för att skapa dynamiska webbplatser. Från 49 €. |
| |
Ruby och Ruby on Rails (kurs)
Skapa program och webbapplikationer med Ruby och RoR. Från 39 €. |