如何调试弹簧 AOP
我对Spring AOP有一个问题,它没有将一个方面与它应该的所有方法联系起来(在我看来)(请参阅此问题以获取有关根本问题的更多信息:Spring AOP忽略了Hessian服务的一些方法)。
如何调试,哪些方法和实例与哪些方面相结合?有没有像春天aop的详细标志这样的东西,它提供了这些信息?
我对Spring AOP有一个问题,它没有将一个方面与它应该的所有方法联系起来(在我看来)(请参阅此问题以获取有关根本问题的更多信息:Spring AOP忽略了Hessian服务的一些方法)。
如何调试,哪些方法和实例与哪些方面相结合?有没有像春天aop的详细标志这样的东西,它提供了这些信息?
Spring AOP类中似乎没有太多的日志记录代码,但是...
如果Spring AOP决定使用Cglyb创建代理,有一行可能会对您有所帮助:
// in org.springframework.aop.framework.Cglib2AopProxy.getProxy(ClassLoader)
if (logger.isDebugEnabled()) {
logger.debug("Creating CGLIB2 proxy: target source is " + this.advised.getTargetSource());
}
当使用JDK代理时,类似的一个似乎派上了用场:
// in org.springframework.aop.framework.JdkDynamicAopProxy.getProxy(ClassLoader)
if (logger.isDebugEnabled()) {
logger.debug("Creating JDK dynamic proxy: target source is " + this.advised.getTargetSource());
}
只需尝试为这两个类打开 DEBUG 级日志记录,然后查看输出内容。