Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 仅当特定类在Spring AOP中调用时拦截方法_Java_Spring_Jakarta Ee_Aspectj_Spring Aop - Fatal编程技术网

Java 仅当特定类在Spring AOP中调用时拦截方法

Java 仅当特定类在Spring AOP中调用时拦截方法,java,spring,jakarta-ee,aspectj,spring-aop,Java,Spring,Jakarta Ee,Aspectj,Spring Aop,我在这里有一个场景,我想得到关于如何实现的建议 假设我在一个名为类a的类中有一个方法,该方法由类B和类C中的类a的实例触发。在Spring AOP中,当B类触发该方法时,我如何拦截该方法 干杯, Thiagz您可以使用类似于下面的表达式进行截取 @Around(“@annotation(someAnnotation)&&execution(*x.y.z.ClassB.*(…)”) 将此应用于要拦截的ClassA方法-您期待的魔法在于执行条件。 虽然我还没试过,但希望能有帮助 正如我所看到的,

我在这里有一个场景,我想得到关于如何实现的建议

假设我在一个名为类a的类中有一个方法,该方法由类B类C中的类a的实例触发。在Spring AOP中,当B类触发该方法时,我如何拦截该方法

干杯,
Thiagz

您可以使用类似于下面的表达式进行截取

@Around(“@annotation(someAnnotation)&&execution(*x.y.z.ClassB.*(…)”)


将此应用于要拦截的ClassA方法-您期待的魔法在于
执行
条件。


虽然我还没试过,但希望能有帮助

正如我所看到的,如果调用方是B,就没有办法只截取,但是你可以截取所有东西,检查什么类调用了你的方法,如果它被B调用,就记录一些东西。这是StackOverflow,这是关于代码的。恕我直言,提供示例代码而不是含糊不清地试图用散文的方式抽象地描述问题是否如此困难?请用一个自我一致的、可执行的代码示例来更新问题,说明手头的问题,最好是一个。你会得到更好的帮助,尤其是如果你想得到我的帮助
:-)
我想我可以帮你,但我不想猜你到底想知道什么。我想@annotation对我的场景不起作用,因为我想对传入的请求设置条件,而不是对我想要截获的类设置条件。