..


Sponzorované odkazy

Jádro Container - @ Autowired a zdroje

V předchozí části jsme viděli, jak nastavit IoC kontejneru pomocí metadat ve formátu XML.
Výchozí konfigurace přes Anotace Java není povoleno, aby bylo možné zadat nell'applicationContext. <context:annotation-config/> Tagu XML.
Pojďme se podívat, jak používat @ Autowired nastavit závislosti.

@ Autowired výrobce






 {Public class AutowiredBean1





  



 Soukromé ServiceAW1 Service1;





  



 Soukromé ServiceAW2 Service2;





  



 @ Autowired



  



 veřejné AutowiredBean1 (ServiceAW1 Service1, ServiceAW2 Service2) {



    



 super ();



    



 this.service1 = Service1;



    



 this.service2 = Service2;



  



 }





  



 / **



   



 * Obchodní logika ..........



   



 * /







 }



a nell'applicationContext. XML





 <context:annotation-config/>









 <bean id="serviceAW1" class="it.mrwebmaster.di.autowired.ServiceAW1Impl"/>







 <bean id="serviceAW2" class="it.mrwebmaster.di.autowired.ServiceAW2Impl"/>









 <bean id="autowiredBean1" class="it.mrwebmaster.di.autowired.AutowiredBean1"/>



@ Autowired tvůrci nebo oborů






 {Public class AutowiredBean2





  



 @ Autowired



  



 Soukromé ServiceAW1 Service1;





  



 Soukromé ServiceAW2 Service2;





  



 veřejné ServiceAW1 getService1 () {



    



 Service1 návrat;



  



 }





  



 veřejné ServiceAW2 getService2 () {



    



 Service2 návrat;



  



 }





  



 public void setService1 (ServiceAW1 Service1) {



    



 this.service1 = Service1;



  



 }





  



 @ Autowired



  



 public void setService2 (ServiceAW2 Service2) {



    



 this.service2 = Service2;



  



 }





  



 / **



   



 * Obchodní logika ..........



   



 * /







 }



a nell'applicationContext. XML
 



 <bean id="autowiredBean2" class="it.mrwebmaster.di.autowired.AutowiredBean2"/>

 
Spolu s můžete použít @ @ Autowired kvalifikačních specfic na ID fazole, kterou chcete aplikovat, například v případě, že jsou dvě fazole, které jsou stejné třídy, takže pokud tam je dvojznačnost.





 @ Autowired







 @ Kvalifikace ("serviceAW1")







 Soukromé ServiceAW1 Service1;



nebo





 @ Autowired







 veřejné AutowiredBean4 (@ kvalifikace ("serviceAW1") ServiceAW1 Service1, ServiceAW2 Service2) {







 .....



Zdroje

Další velmi užitečnou funkcí, které vycházejí nám poskytuje snadný přístup ke zdrojům, je (který může být jak se měnil jako soubory nebo adres URL). Tato funkce je realizována pomocí rozhraní a jeho implementace zdrojů.

Rozhraní zdrojů rozšiřuje InputStreamSource přidávání dalších funkcí. Hlavní implementace tohoto rozhraní jsou:

  • UrlResource, umožňuje přístup ke všem prostředkům, které jsou dostupné prostřednictvím adresy URL.
  • ClassPathResource, umožňuje přístup ke všem prostředkům na classpath.
  • FileSystemResource, umožňuje přístup k souborům.
  • ServletContextResource, umožňuje přístup ke všem prostředkům, které jsou běžně přístupné prostřednictvím ServletContext.
  • InputStreamResource, umožňuje přístup ke zdroji daného InputStream.
  • ByteArrayResource, umožňuje přístup ke zdroji daného ByteArray.

Díky následujícím příkladu uvidíme, jak instaziare zdroje a aplikovat do našich fazole:






 {Public class ResourceBean





  



 soukromých zdrojů zdrojů;





  



 public void setResource (Resource zdroj) {



    



 this.resource = zdroj;



  



 }





  



 veřejný zdroj getResource () {



    



 návrat zdrojů;



  



 }







 }



nell'applicationContext. XML





 <bean id="resourceBean" class="it.mrwebmaster.resources.ResourceBean">



  



 <property name="resource" value="classpath:resource"> </ property>







 </ Bean>



V příkladu nemusíte definovat typ zdroje, který bude instance vytváří instanci jaře, ale to je vhodné. K dispozici jsou tři typy zdrojů řetězce, je založena na Queli instaziata zdrojů:

  • classpath: konkretizuje ClassPathResource
  • Soubor: konkretizuje FileSystemResource
  • http:instanzia UrlResource

Jarní Java Průvodce
E-Learning
Linux (kurz) Linux (kurz)
Kompletní průvodce pro open-source systému. Od 49 €.
PHP (kurz) PHP (kurz)
Celý kurz pro vytváření dynamických webů. Od 49 €.
Ruby a Ruby on Rails (kurz) Ruby a Ruby on Rails (kurz)
Vytvořit software a webových aplikací s Ruby a RoR. Od 39 €.
Sponzorované odkazy