我在spring中定义了以下AOP配置:
<aop:config>
<aop:aspect ref="aopAdvice">
<aop:around
pointcut="execution(* com.bis.client.auto.ClientHandler.sendCanonical(..))"
method="methodDuration"/>
</aop:aspect>
<aop:aspect ref="aopAdvice">
<aop:around
pointcut="execution(public * com.bis.client.auto.MessageHandlerImpl.messageArrived(..))"
method="methodDuration"/>
</aop:aspect>
</aop:config>
我基本上希望在调用sendCanonical方法或message方法时调用methodDuration方法。
问题是建议永远不会被调用,即使我100%确定这些方法被调用。
有什么想法吗?
答案 0 :(得分:0)
确保您已定义。还要确保所有其他配置与springsource文档中定义的相同。
如果上述情况正常,则将切入点更改为“执行(public * *(..))”。这削减了每个班级的每一种公共方法。通过这样做,应该为您的应用中的每个公共方法调用AOP建议。如果这样可以正常工作,那意味着您的配置是正确的。如果这不起作用,那么请确保您的配置不正常。所以修改配置&amp;试试这一步。
一旦上面的步骤工作正常,然后慢慢逐个修改切入点,比如首先添加类名(这应该删除该类中的每个公共方法),然后添加方法名等。
祝你好运!!!!!