Spring AOP 是不是可以拦截 线程内部调用的拦截方法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring AOP 是不是可以拦截 线程内部调用的拦截方法?相关的知识,希望对你有一定的参考价值。

比如:aop拦截say()方法,在thread里面调用这个方法,是否可以拦截

参考技术A 创建拦截类:
@Aspect
public class MyAspect

/** 执行前拦截 */
@Before("execution(* t.t..service.*Service.*(..))")
public void before(JoinPoint point) throws Throwable
System.out.println("执行方法:" + point.getSignature().getDeclaringTypeName() + "." + point.getSignature().getName());


/** 执行后拦截 */
@After("execution(* t.t..service.*Service.*(..))")
public void after(JoinPoint point) throws Throwable
System.out.println("执行完成:" + point.getSignature().getDeclaringTypeName() + "." + point.getSignature().getName());
追问

你说的那个是正常情况下当然可以拦截了,这个和问的不是一个问题,问的是线程里面调用say()方法,在aop配置拦截的也是say(),是否可以拦截,如果可以,有什么好的方式

以上是关于Spring AOP 是不是可以拦截 线程内部调用的拦截方法?的主要内容,如果未能解决你的问题,请参考以下文章

Spring AOP不拦截从对象内部调用的方法原因

Spring AOP为啥不能拦截从对象内部调用的方法

Spring AOP不拦截从对象内部调用的方法原因

Spring AOP不拦截从对象内部调用的方法原因

spring aop无法拦截类内部的方法调用

Spring的Bean内部方法调用无法使用AOP切面(CacheAble注解失效)