..


Sponsorētās saites

AOP - Starpniekserveri

Pirms pārcelšanās lai redzētu, kā jums izveidot ar to aspektu pointcuts un konsultācijas, ir ļoti svarīgi saprast, kā tuvinātajām.
Proxy nav nekas cits kā iesaiņojuma (taras), kas satur objektu un pakļauj visas sabiedriskās medodi objektu. Kad jūs izmantot metodi proxy faktisko īstenošanu metode ir deleģēta objektu Wrap, tādējādi padarot starpniekservera klātbūtni pilnīgi pārredzama lietotājiem.
Pilnvaras izmanto pavasara AOP, lai īstenotu nekā vienkārša delegāts metodes, nodarbojas arī ar dažādu vadības konsultācijas.

Mēs saprotam, cik tas proxy īstenot vienu ļoti vienkārši. Vispirms mēs izveidot vienkāršu interfeisu:






 {Valsts saskarne SimpleInterface



	

  



 valsts spēkā f1 ();



	

  



 valsts spēkā f2 ();







 }



mēs izveidot pat vienkāršu īstenošanu:





 SimplePojo {valsts klases īsteno SimpleInterface





  



 @ Override



  



 valsts spēkā f1 () {



    



 System.out.println ("F1");



    



 f2 ();



  



 }





  



 @ Override



  



 valsts spēkā f2 () {



    



 System.out.println ("F2");



  



 }







 }



Mēs atzīmējam, ka metode f1 () veic zvanu, lai f2 ().
Let 's tagad izveidot proxy, kā jau teica, mums ir nepieciešams izveidot konteiners objektu un pakļaut visas tās metodes, tad proxy īstenos interfeisu un pēc tam deleģēt SimpleInterface visi metode prasa, lai reālo objektu:






 SimpleProxy {valsts klases īsteno SimpleInterface





  



 Private SimpleInterface deleģē;





  



 valsts SimpleProxy (SimpleInterface delegāts) {



    



 super ();



    



 this.delegate = pārstāvis;



  



 }





  



 @ Override



  



 valsts spēkā f1 () {



    



 System.out.println ("deleģēšana F1 ()");



    



 delegate.f1 ();



  



 }





  



 @ Override



  



 valsts spēkā f2 () {



    



 System.out.println ("deleģēšana F2 ()");



    



 delegate.f2 ();



  



 }







 }



Mūsu vienkāršs, piemēram, proxy tas ir izdrukātu ziņu, kurā teikts, ka ir deleģējot zvanu.

Mēs veidojam tagad Galvenais tests, lai redzētu, kā mūsu proxy:






 valsts klases Main {





  



 valsts statisko spēku galvenās (String [] args) {



    



 / / Izveidot gadījums pupu

 

    



 SimpleInterface realBean SimplePojo = jauns ();





    



 System.out.println ("##### pupu #####");



    



 realBean.f1 ();



    



 System.out.println ();



    



 realBean.f2 ();





    



 System.out.println ();





    



 / / Izveidot gadījums proxy



    



 SimpleInterface SimpleProxy proxy = jauns (jauns SimplePojo ());





    



 System.out.println ("##### proxy #####");



    



 proxy.f1 ();



    



 System.out.println ();



    



 proxy.f2 ();



  



 }







 }



Pirmo bloku kods sniedz šādu produkciju:





 ##### Bean #####







 F1







 F2









 F2



Tagad varētu sagaidīt, ka otrā bloka jauda ir šāda:





 ##### ##### Proxy







 Deleģējot F1 ()







 F1







 Deleģējot F2 ()







 F2









 Deleģējot F2 ()







 F2



Invce nav! Rezultāts būs šāds:





 ##### ##### Proxy







 Deleģējot F1 ()







 F1







 F2









 Deleģējot F2 ()







 F2



Kā mēs varam redzēt zvanu, ka metode f1 () ir metode, f2 () neiziet cauri proxy, jo, kad jums ir deleģēti izpildes metodi reāls objekts visi iekšējie zvani netiks pārtverta uz pilnvaras pamata.
Šī iemesla dēļ nevarat izveidot konsultāciju par metodēm, ko sauc no citas metodes, objektu, vai drīzāk var izveidot tikai tad, ja šīs metodes izmanto ārēju objektu, jo pretējā padoms nav izpildīts.
Proxy

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