gpt4 book ai didi

java - spectj 不拦截类被注释的构造函数

转载 作者:太空宇宙 更新时间:2023-11-04 10:00:01 27 4
gpt4 key购买 nike

我想拦截所有使用特定注释对类进行注释的构造函数调用。

我有一个这样的方面:

@Aspect
public class ConstructorClassLevelAspect {
@Before(
"execution(*.new(..)) && @annotation(ConstructorClassLevel)")
public void doConstructorClassLevel(
JoinPoint point) throws Throwable {
System.out.println("constructed" + point);
}
}

还有一个实例:

@ConstructorClassLevel
public class ConstructorClassLevelExample {

}

现在,如果我更改切面并删除 @annotation 过滤器,那么我会看到切面正在拦截调用。另外,如果我创建一个默认构造函数,然后用注释对其进行注释,它也可以工作。

但是,我希望注释存在于类上,这样如果我有 1 个或 10 个构造函数,它们都会以相同的方式被拦截(而且我只需将其放在类上)。

最佳答案

看来如果我这样做@within(ConstructorClassLevelExample),它就会起作用!

关于java - spectj 不拦截类被注释的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53638367/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com