@spring基于XML的环绕通知
问题
1.当完美配置了环绕通知切入点方法没有执行,而通知方法执行了
分析
2.通过对比动态代理中的环绕通知代码,动态代理的环绕通知有明确的切入点方法调用,而额我们的没有。
解决
3.Spring框架为我们提供了一个接口:proceedingjoinpoint ,该接口有一个方法proceed(), 此方法就相当明确调用切入点方法。该接口可以作为环绕通知的方法参数,在程序执行时Spring框架会为我们提供接口的实现类供我们试用。
代码
4.XML的配置
// An highlighted block
<!--配置spring的IOC,把service对象配置进来-->
<bean id="accountService" class="com.joyTop.service.impl.AccountServiceImpl"></bean>
<!-- 配置Logger类 -->
<bean id="logger" class="com.joyTop.utils.Logger"></bean>
<!-- 配置AOP -->
<aop:config>
<!--AOP通用切入点-->
<aop:pointcut id="pt1" expression="execution(* com.joyTop.service.impl.*.*(..))"/>
<!-- 配置切面 -->
<aop:aspect id="logAdvice" ref="logger">
<aop