Spring AOP proxy ua haujlwm li cas?
Spring AOP proxy ua haujlwm li cas?

Video: Spring AOP proxy ua haujlwm li cas?

Video: Spring AOP proxy ua haujlwm li cas?
Video: Как на самом деле работает Spring AOP [Путешествие с Spring AOP — Часть 2] 2024, Hlis ntuj nqeg
Anonim

AOP npe : ib yam khoom tsim los ntawm cov AOP lub moj khaum nyob rau hauv thiaj li yuav siv tau cov nam cog lus (qhia tswv yim executions thiab thiaj li nyob rau). Hauv Caij nplooj ntoos hlav Framework, ib AOP npe yuav ua JDK dynamic npe los yog CGLIB npe . Weaving: txuas qhov sib txuas nrog lwm hom kev thov lossis cov khoom siv los tsim cov khoom qhia.

Tsuas yog li ntawd, AOP ua haujlwm li cas rau lub caij nplooj ntoo hlav?

Spring AOP yog proxy-based. Caij nplooj ntoos hlav siv JDK proxies (xav tau thaum txawm tias lub hom phiaj proxied siv tsawg kawg yog ib qho interface) lossis CGLIB npe (yog tias lub hom phiaj khoom ua tsis siv cov interfaces) los tsim lub npe rau lub hom phiaj taum.

Cglib proxy ua haujlwm li cas? Hauv qhov tseem ceeb ntawm Cglib yog chav Enhancer, uas yog siv los tsim cov dynamic subclasses. Nws ua haujlwm zoo ib yam li JDK's Pov thawj chav kawm, tab sis tsis yog siv JDK InvocationHandler, nws siv Callback los muab npe tus cwj pwm.

Kuj kom paub, Spring ua li cas thiaj tsim cov npe?

Los ntawm lub neej ntawd, yog tias koj taum ua tsis siv lub interface, Caij nplooj ntoos hlav siv cov cuab yeej cuab tam: thaum pib lub sijhawm, chav kawm tshiab yog tsim . Nws tau txais txiaj ntsig los ntawm koj chav kawm taum thiab ntxiv tus cwj pwm hauv cov menyuam txoj kev. Yuav kom tsim xws li npe , Caij nplooj ntoos hlav siv lub tsev qiv ntawv thib peb hu ua cglib.

AOP yog dab tsi nyob rau lub caij nplooj ntoos hlav nrog piv txwv?

AOP nrog Caij nplooj ntoos hlav Lub moj khaum. Ib qho ntawm cov khoom tseem ceeb ntawm Caij nplooj ntoos hlav Framework yog Aspect oriented programming ( AOP ) lub moj khaum. Spring AOP module muab interceptors los cuam tshuam ib daim ntawv thov. Rau piv txwv , thaum ib txoj kev raug tua, koj tuaj yeem ntxiv kev ua haujlwm ntxiv ua ntej lossis tom qab txoj kev ua tiav.

Pom zoo: