..


Sponsorētās saites

Core konteiners - SOK konteineri

SOK konteiners Pavasaris ir daļa, kas nodarbojas ar instantiate un konfigurēt objektus, kas atrodas tajā, ko sauc par pupiņām.

Pupiņas tiek konfigurētas, izmantojot metadatus, ko var XML failus vai Java anotācijām . Pēc noklusējuma, metadati ir tikai lasāms ar XML, lai anotāciju izmantošana nepieciešams konfigurēt ApplicationContext.

Kā minēts iepriekš par DI un SOK loma tiek īstenota, izmantojot BeanFactory un ApplicationContext. Ņemot vērā, ka ApplicationContext ir superset BeanFactory, tā ieteica, un no šī brīža mēs attieksies tikai all'ApplicationContext.
Ir dažādi veidi, ko sniedz Spring ApplicationContext, atkarībā no pielietojuma ir jāattīsta. Piemēram, patstāvīgs pieteikumus, un mēs esam ClassPathXmlApplicationContext FileSystemXmlApplicationContext, savukārt uzņēmumu pieteikumus, ir WebApplicationContext, kas ir instantiated caur serlvet klausītājs.
Visiem viņiem ir ApplicationContext konfigurācija metadatiem, un tad mums ir nepieciešams instantiate vispirms rakstīt xml failu.
Paņemsim piemēru, kas vienmēr izmanto kā atsauci vadību video mēs redzam, kā inicializēt klasi un SOK VideoManager.
Vispirms mēs metadatus izveido, izmantojot zvanu applicationContext.xml failu:






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





  



 <-! Imports un citus metadatus ->



  



 <import resource="otherbeans.xml"/>

	



  



 <- Pakalpojuma definīcijai! ->

						

  



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





  



 <-! Izšķirtspējas video MANAGER ->



  



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



    



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



  



 </ Pupiņu>



	





 </ Pupas>



Piemērs liecina, ka ir iespējams integrēt vairākas metadatu failos definīciju, kā, lai sadalītu pupiņām. Pašlaik tas ir svarīgi saprast sintaksi metadati (kas tiks apspriests vēlāk), bet pavasara potenciālu.
Izņemt no klases konstruktors, lai sāktu VideoManager dvdService un radīt vaislas un noteicēji par dvdService:






 valsts VideoManager () {



  



 super ();







 }









 <Dvd> GetAvalaibleDvdList sabiedrisko saraksts () {



  



 //......



  



 availabeDvdList atgriešanās;







 }









 valsts spēkā setDvdService (DvdService dvdService) {



  



 this.dvdService = dvdService;







 }









 valsts DvdService getDvdService () {



  



 dvdService atgriešanās;







 }



Tagad pieņemsim redzēt, kā inicializēt SOK:





 / **



 



 * Instanz SOK konteiners



 



 * /







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









 / **



 



 * Ielādēt klases VideoManager



 



 * /







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









 / **



 



 * Drukāt sarakstā DVD pieejams



 



 * /







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









 par (DVD DVD: avalaibleDvdList) {



  



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







 }



Kā mēs redzējām, rakstot dažas rindiņas XML kodu, un mums bija iespēja pilnībā konfigurēt savu pieteikumu.

Izmantot Pavasara, kas ir aprakstīts iepriekšējās nodaļās priekšrocības izceļas:

  • Mūsu piemērošanu, un VideoManger DvdServiceImpl Nessus neīsteno saskarnes vai abstrakta klase, un atkarības dall'IoC konteineri pupiņas tiek anulētas.
  • Ja izlemjat mainīt īstenošanas dell'DvdService, vai papildināt, tikai mainīt applicationContext.xml failu, nepieskaroties kodam VideoManager, pateicoties izmantošanu saskarnes.
  • Arī pateicoties izmantošanu saskarnes ir viegli izveidot testus, mūsu pieteikumu.

IoC Container

Atkal atsaucoties uz mūsu piemērs, mēs varētu izmantot FileSystemXmlApplicationContext šādi:

 



 ApplicationContext ApplicationContext FileSystemXmlApplicationContext = jauni ("/ path / applicationContext.xml");

 
Tā vietā, lai izmantotu WebApplicationContext uzņēmumā pieteikumu, jums jāpievieno mūsu web.xml (pilnīgs piemērs uzņēmumu lietojumprogrammu, kas izmanto pavasara illutrato būs pēdējā nodaļa šajā rokasgrāmatā):





 <- SPRING! ->







 <context-param>



  



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



  



 <param-value> classpath *: applicationContext.xml </ param-vērtība>







 </ Context-param>









 <listener>



  



 <listener-class> org.springframework.web.context.ContextLoaderListener </ klausītājs klasē>







 </ Listener>



Java Spring Guide
E-Learning
Linux Course Linux Course
Pilnīga rokasgrāmata atvērtā koda sistēma. Sākot no 49 €.
PHP Course PHP Course
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no 49 €.
Protams, Ruby un Ruby On Rails Protams, Ruby un Ruby On Rails
Izveide programmatūras un Web lietojumprogrammas ar Ruby un ROR. Sākot no € 39.
Sponsorētās saites