天天看点

SpringBoot AOP无法拦截类内部的调用方法

问题描述:

类A中有个方法B,方法B去调用类A中的另一个方法C,现在想用aop去拦截这个C方法,发现无法拦截。

由于博主学术不精,钻研的不深,说不太清楚为什么,反正是一些关于底层代理的问题。这里就直接给出解决方法。

1.改变调用C方法的写法:

`

// handlerApConfigMod(msg_json);//原来是直接调用另一个方法,改为下面这种写法

((AcUpdataHandler) AopContext.currentProxy()).handlerApConfigMod(msg_json);//AcUpdataHandler是当前类名

`

2.SpringBoot启动类中加一个注解

@EnableAspectJAutoProxy(exposeProxy = true)

这样就可以解决问题了。

原文链接:Spring AOP无法拦截内部方法调用

继续阅读