gpt4 book ai didi

java - 是否有搜索所有子包的 AspectJ 切入点表达式?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:03:05 25 4
gpt4 key购买 nike

所以我得到了一个方面,该方面使用以下表达式声明了一个方法:

@Before("execution(* aaa.bbb.ccc.*.*(..))")

这对包 aaa.bbb.ccc 中的所有类都非常有效。但是,现在我想捕获 aaa.bbb 中的所有类,包括 aaa.bbb.ccc 中的类。所以我试着把它备份到这里:

@Before("execution(* aaa.bbb.*.*(..))")

不过,这只会从 aaa.bbb 中获取类,而忽略来自 aaa.bbb.ccc 的类。有没有办法让表达式递归地搜索所有子包?

最佳答案

明白了!文本更改出奇地微不足道。

@Before("execution(* aaa.bbb.*.*(..))")

……变成……

@Before("execution(* aaa.bbb..*.*(..))")

只需在包名称和限定符之间添加额外的句点,您就可以开始比赛了。

我在进行更改后遇到的一个问题是整个 Spring 崩溃并崩溃了。那是因为切面本身 位于aaa.bbb 的子包中。因此,如果您这样做,请确保您使用 !within 子句来免除您的方面尝试处理自身。

关于java - 是否有搜索所有子包的 AspectJ 切入点表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28053863/

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