logo

IoC-säiliö

  1. IoC-säiliö
  2. BeanFactoryn käyttö
  3. ApplicationContextin käyttäminen

IoC-säilö vastaa objektien luomisesta, konfiguroinnista ja kokoamisesta. IoC-säilö saa tiedot XML-tiedostosta ja toimii sen mukaisesti. IoC-kontin suorittamat päätehtävät ovat:

  • sovellusluokan instantoimiseksi
  • objektin määrittämiseksi
  • koota objektien välisiä riippuvuuksia

IoC-säiliöitä on kahdenlaisia. He ovat:

    BeanFactory ApplicationContext

Ero BeanFactoryn ja ApplicationContextin välillä

org.springframework.beans.factory. BeanFactory ja org.springframework.context. ApplicationContext rajapinnat toimii IoC-säiliönä. ApplicationContext-käyttöliittymä on rakennettu BeanFactory-liittymän päälle. Se lisää joitakin ylimääräisiä toimintoja kuin BeanFactory, kuten yksinkertaisen integroinnin Springin AOP:n kanssa, viestiresurssien käsittelyn (I18N:lle), tapahtuman leviämisen, sovelluskerroskohtaisen kontekstin (esim. WebApplicationContext) verkkosovellukselle. Joten on parempi käyttää ApplicationContextia kuin BeanFactorya.

BeanFactoryn käyttö

XmlBeanFactory on BeanFactory-rajapinnan toteutusluokka. Käyttääksemme BeanFactorya meidän on luotava XmlBeanFactory-luokan esiintymä alla kuvatulla tavalla:

 Resource resource=new ClassPathResource('applicationContext.xml'); BeanFactory factory=new XmlBeanFactory(resource); 

XmlBeanFactory-luokan rakentaja vastaanottaa Resource-objektin, joten meidän on välitettävä resurssiobjekti BeanFactory-objektin luomiseksi.


ApplicationContextin käyttäminen

ClassPathXmlApplicationContext-luokka on ApplicationContext-rajapinnan toteutusluokka. Meidän on luotava ClassPathXmlApplicationContext-luokka, jotta voimme käyttää ApplicationContextia alla kuvatulla tavalla:

 ApplicationContext context = new ClassPathXmlApplicationContext('applicationContext.xml'); 

ClassPathXmlApplicationContext-luokan rakentaja vastaanottaa merkkijonon, joten voimme välittää xml-tiedoston nimen ApplicationContext-instanssin luomiseksi.

lataa esimerkki käyttääksesi ApplicationContextia