..


Sponsorerede links

Core Container - @ Autowired og ressourcer

I forrige afsnit så vi, hvordan du konfigurerer IOC container ved hjælp af metadata i XML-format.
Standardkonfigurationen gennem Java Annotation ikke er aktiveret, så du kan indtaste nell'applicationContext. <context:annotation-config/> XML-kode.
Lad os se, hvordan du bruger @ Autowired at konfigurere afhængigheder.

@ Autowired producent af






 {Public class AutowiredBean1





  



 Privat ServiceAW1 Service1;





  



 Privat ServiceAW2 Service2;





  



 @ Autowired



  



 offentlige AutowiredBean1 (ServiceAW1 Service1, ServiceAW2 Service2) {



    



 super ();



    



 this.service1 = Service1;



    



 this.service2 = Service2;



  



 }





  



 / **



   



 * Forretningslogik ..........



   



 * /







 }



og 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 settere eller på






 {Public class AutowiredBean2





  



 @ Autowired



  



 Privat ServiceAW1 Service1;





  



 Privat ServiceAW2 Service2;





  



 offentlige ServiceAW1 getService1 () {



    



 Service1 vende tilbage;



  



 }





  



 offentlige ServiceAW2 getService2 () {



    



 Service2 vende tilbage;



  



 }





  



 public void setService1 (ServiceAW1 Service1) {



    



 this.service1 = Service1;



  



 }





  



 @ Autowired



  



 public void setService2 (ServiceAW2 Service2) {



    



 this.service2 = Service2;



  



 }





  



 / **



   



 * Forretningslogik ..........



   



 * /







 }



og nell'applicationContext. xml
 



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

 
Sammen med dig kan bruge @ @ Autowired Qualifier specfic til id af de bønner, du ønsker at injicere, for eksempel, hvis der er to bønner, der er af samme klasse, så hvis der er tvetydighed.





 @ Autowired







 @ Qualifier ("serviceAW1")







 Privat ServiceAW1 Service1;



eller





 @ Autowired







 offentlige AutowiredBean4 (@ Qualifier ("serviceAW1") ServiceAW1 Service1, ServiceAW2 Service2) {







 .....



Ressourcer

En anden meget nyttig funktion, at foråret giver os nem adgang til ressourcer er det (som kan være lige så forskellige som filer eller URL'er). Denne funktion er implementeret ved hjælp af brugerfladen og dens implementeringer Resource.

Interfacet Resource udvider InputStreamSource at tilføje andre funktioner. De vigtigste implementeringer af dette interface er:

  • UrlResource, giver adgang til alle ressourcer, der er adgang til via en URL.
  • ClassPathResource, giver adgang til alle ressourcer på classpath.
  • FileSystemResource, tillader adgang til filer.
  • ServletContextResource, giver adgang til alle ressourcer, der normalt er adgang til via ServletContext.
  • InputStreamResource, giver adgang til den ressource af en given InputStream.
  • ByteArrayResource, giver adgang til den ressource af en given ByteArray.

Gennem det følgende eksempel vil vi se, hvordan instaziare Ressourcer og tilføre vores bønner:






 {Public class ResourceBean





  



 private Resource ressource;





  



 public void setResource (Resource ressource) {



    



 this.resource = ressource;



  



 }





  



 offentlig ressource getResource () {



    



 tilbage ressource;



  



 }







 }



nell'applicationContext. xml





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



  



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







 </ Bean>



I eksemplet du ikke definere den type ressource, der vil blive instantieret, er det instantierer i foråret, men det er hensigtsmæssigt. Der er tre typer af strengen Resource, er baseret på Queli instaziata Resource:

  • classpath: instantierer et ClassPathResource
  • Fil: instantierer et FileSystemResource
  • http:instanzia en UrlResource

Spring Java Guide
E-Learning
Linux (Kursus) Linux (Kursus)
Komplet guide til open source-system. Fra 49 €.
PHP (Kursus) PHP (Kursus)
Fuld kursus for at skabe dynamiske web-sites. Fra 49 €.
Ruby og Ruby on Rails (Kursus) Ruby og Ruby on Rails (Kursus)
Opret software og web-applikationer med Ruby og RoR. Fra 39 €.
Sponsorerede links