2014-10-30 24 views
0

我在这里有一个场景,并想知道如何完成它。只有在Spring AOP中有特定的类调用时才会侦听方法

比方说,我有方法在一个名为类A级这种方法是通过A类的一个实例,在这两个B类C类触发。我怎样才能在Spring AOP中仅仅通过B类触发来截获该方法。

干杯, Thiagz

+0

正如我所看到的,如果调用者是B,则无法拦截,但是您可以截取所有内容,检查是否有类调用了您的方法,并记录了如果调用者B调用了它。 – JamesENL 2014-10-30 06:48:00

+1

这是StackOverflow和SO关于代码。在所有应有的尊重下,是否很难提供样本代码,而不是用抽象的方式来形容散文中的问题?请用一个自洽的可执行代码示例更新问题,说明当前的问题,最好是[SSCCE](http://sscce.org/)。那么你会得到更好的帮助,特别是如果你想从我那里得到帮助。 ':-)'我想我可以帮助你,但不想猜测你可能想知道什么。 – kriegaex 2014-10-30 09:18:10

回答

0

你可以用类似的表达拦截以下

@Around("@annotation(someAnnotation) && execution(* x.y.z.ClassB.*(..))")

应用此ClassA的的方法被截获 - 神奇的你正期待着谎言的execution条件。

虽然我没有尝试过,但希望它有帮助!

+0

我认为@annotation不适用于我的场景,因为我想设置传入请求的条件,而不是要拦截的类。 – Thiagz 2014-10-30 07:54:35

相关问题