Spring AOP proksi qanday ishlaydi?
Spring AOP proksi qanday ishlaydi?

Video: Spring AOP proksi qanday ishlaydi?

Video: Spring AOP proksi qanday ishlaydi?
Video: Как на самом деле работает Spring AOP [Путешествие с Spring AOP — Часть 2] 2024, Noyabr
Anonim

AOP proksi : tomonidan yaratilgan ob'ekt AOP aspektli shartnomalarni amalga oshirish uchun asos (usul ijrosi bo'yicha maslahat berish va boshqalar). In Bahor Ramka, an AOP proksi-server JDK dinamiki bo'ling proksi yoki CGLIB proksi . To'quv: tavsiya etilgan ob'ektni yaratish uchun jihatlarni boshqa dastur turlari yoki ob'ektlar bilan bog'lash.

Oddiy qilib aytganda, AOP bahorda qanday ishlaydi?

Bahor AOP proksi-serverga asoslangan. Bahor JDK proksi-serverlaridan (hatto proksilangan maqsad kamida bitta interfeysni amalga oshirsa ham afzalroq) yoki CGLIB proksi-serverlaridan (agar maqsadli ob'ekt bo'lsa) foydalanadi qiladi hech qanday interfeyslarni amalga oshirmang) berilgan maqsadli fasol uchun proksi-server yaratish.

Cglib proksi qanday ishlaydi? Asosiy qismida Cglib dinamik pastki sinflarni yaratish uchun ishlatiladigan Enhancer sinfidir. Bu ishlaydi JDK ga o'xshash tarzda Proksi sinf, lekin JDK InvocationHandler dan foydalanish o'rniga, u ta'minlash uchun qayta qo'ng'iroqdan foydalanadi proksi xulq-atvor.

Shuningdek, Spring qanday qilib proksi-serverlarni yaratadi?

Odatiy bo'lib, sizning fasolingiz bo'lsa qiladi interfeysni amalga oshirmaslik, Bahor texnik merosdan foydalanadi: ishga tushirish vaqtida yangi sinf yaratilgan . U fasol sinfingizdan meros bo'lib, bolalar usullarida xatti-harakatlarni qo'shadi. Bunday yaratish uchun proksi-serverlar , Bahor cglib nomli uchinchi tomon kutubxonasidan foydalanadi.

Misol bilan bahorda AOP nima?

AOP bilan Bahor Ramka. ning asosiy tarkibiy qismlaridan biri Bahor Framework - bu aspektga yo'naltirilgan dasturlash ( AOP ) ramka. Bahor AOP modul ilovani tutib olish uchun interceptors bilan ta'minlaydi. Uchun misol , usul bajarilganda, siz usulni bajarishdan oldin yoki keyin qo'shimcha funksiyalarni qo'shishingiz mumkin.

Tavsiya: