..


Sponzorované odkazy

Jádro kontejner - IoC kontejnery

Kontejneru MOV Jaro je ta část, která se zabývá instanci a nastavit objekty, které jsou umístěny v ní, které se nazývají fazole.

Fazole se konfigurují pomocí metadat, které mohou být XML soubory nebo Java anotací . Ve výchozím nastavení je metadata číst pouze v XML, který umožní používání poznámek třeba nakonfigurovat ApplicationContext.

Jak již bylo zmíněno dříve, role DI a MOV je realizována prostřednictvím BeanFactory a ApplicationContext. Vzhledem k tomu, že ApplicationContext je nadřazen BeanFactory, doporučuje se, a od této chvíle se budeme odkazovat pouze all'ApplicationContext.
Existují různé druhy poskytovaných jaro ApplicationContext, v závislosti na aplikaci je nutno rozvíjet. Například pro samostatné aplikace a my jsme ClassPathXmlApplicationContext FileSystemXmlApplicationContext, zatímco pro podnikové aplikace, je WebApplicationContext, což je instance přes serlvet posluchače.
Jediné, co potřebují konfigurační ApplicationContext metadata, a pak musíme vytvořit instanci první, kdo se XML soubor.
Vezměme si příklad, vždy používat jako referenční vedení videa vidíme, jak inicializovat třídy a MOV VideoManager.
Nejprve jsme se vytvořit metadata souboru přes call applicationContext.xml:






 <beans xmlns="http://www.springframework.org/schema/beans" ............>





  



 <- Dovoz a další metadata ->



  



 <import resource="otherbeans.xml"/>

	



  



 <- Definice služby ->

						

  



 <bean id="dvdService" class="it.mrwebmaster.DvdServiceImpl" scope="singleton" />





  



 <-! Definition Video MANAGER ->



  



 <bean id="videoManager" class="it.mrwebmaster.VideoManager" scope="prototype">



    



 <property name="dvdService" ref="dvdService" />



  



 </ Bean>



	





 </ Fazole>



Tento příklad ukazuje, že je možné integrovat více metadata souborů definice, jak je uvedeno, aby se rozdělení zrna. V současné době je důležité porozumět syntaxi metadat (které bude řeč později), ale potenciál jara.
Odstranit z konstruktoru třídy inicializovat VideoManager dvdService a vytvořit getter a setter pro dvdService:






 veřejné VideoManager () {



  



 super ();







 }









 <Dvd> GetAvalaibleDvdList veřejný seznam () {



  



 //......



  



 availabeDvdList návrat;







 }









 public void setDvdService (DvdService dvdService) {



  



 this.dvdService = dvdService;







 }









 veřejné DvdService getDvdService () {



  



 dvdService návrat;







 }



Nyní se podívejme, jak inicializovat MOV:





 / **



 



 * Instanz MOV kontejner



 



 * /







 ApplicationContext ApplicationContext = new ClassPathXmlApplicationContext ("applicationContext.xml");









 / **



 



 * Získat třídy VideoManager



 



 * /







 VideoManager VideoManager = (VideoManager) applicationContext.getBean ("VideoManager");









 / **



 



 * Tisk seznamu dostupných DVD



 



 * /







 Seznam <Dvd> avalaibleDvdList videoManager.getAvalaibleDvdList = ();









 pro (DVD DVD: avalaibleDvdList) {



  



 System.out.println (dvd.getTitolo ());







 }



Jak jsme viděli, psát několik řádek kódu XML, a byli jsme schopni plně konfigurovat naší aplikace.

Výhody použití Spring, které byly popsány v předchozích kapitolách vystupují:

  • Fazole naší aplikace a VideoManger DvdServiceImpl Nessus nebude implementovat rozhraní a abstraktní třídy, a závislostí dall'IoC kontejnery jsou neplatné.
  • Pokud se rozhodnete změnit provádění dell'DvdService, nebo přidat další, stačí změnit applicationContext.xml soubor, aniž byste se dotkli kód VideoManager, a to díky využití rozhraní.
  • I díky použití rozhraní lze snadno vytvářet testy pro naši aplikaci.

IoC Container

Opět s odkazem na našem příkladu bychom mohli použít FileSystemXmlApplicationContext takto:

 



 ApplicationContext ApplicationContext FileSystemXmlApplicationContext = new ("/ cesta / applicationContext.xml");

 
Místo toho, abychom použili WebApplicationContext v podnikové aplikace, budete muset přidat v našem web.xml (kompletní příklad podnikové aplikace, která používá jaro illutrato bude poslední kapitola této příručky):





 <- JARO ->







 <context-param>



  



 <param-name> contextConfigLocation </ param-name>



  



 <param-value> classpath *: applicationContext.xml </ param-hodnota>







 </ Kontextová param>









 <listener>



  



 <listener-class> org.springframework.web.context.ContextLoaderListener </ posluchač třídy>







 </ Listener>



Java pružiny
E-Learning
Linux (kurz) Linux (kurz)
Kompletní průvodce pro open-source systém. Od 49 €.
PHP (kurz) PHP (kurz)
Celý kurz pro tvorbu dynamických webových stránek. Od 49 €.
Ruby a Ruby on Rails (kurz) Ruby a Ruby on Rails (kurz)
Tvorba software a webových aplikací s Ruby a RoR. Od 39 €.
Sponzorované odkazy