Spring AOP动态代理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring AOP动态代理相关的知识,希望对你有一定的参考价值。
出现org.springframework.aop.framework.ProxyFactoryBean cannot be cast to 错误
在类型转换的时候, 调用getObject()方法,再对ProxyFactoryBean进行转换
xml文件
<aop:aspectj-autoproxy proxy-target-class="true"></aop:aspectj-autoproxy><!--使用cglib动态代理--> <bean id="greetingProxy" class="org.springframework.aop.framework.ProxyFactoryBean"> <property name="interfaces" value="xxxx"></property><!--代理接口--> <property name="target" ref="xxxx"></property><!--接口的实现类--> <property name="interceptorNames" value="greetingAroundAdvice"></property><!--引入增强--> </bean>
环绕增强类:
@Aspect @Component public class GreetingAroundAdvice implements MethodInterceptor{ @Override public Object invoke(MethodInvocation invocation) throws Throwable { before(); Object result = invocation.proceed(); after(); return result; } private void before() { System.out.println("before"); } private void after() { System.out.println("after"); } }
以上是关于Spring AOP动态代理的主要内容,如果未能解决你的问题,请参考以下文章
Spring5学习笔记 — “Spring AOP底层原理(动态代理)”