我正在寻找的是一种在类级别变量周围指定切入点的方法。就像是:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.FIELD)
@interface MyPointCut
{
}
public class Foo
{
@MyPointCut
BarAPI api = new BarAPI();
}
@Aspect
public class MyAspect
{
@Around(value="execution(* *(..)) && @annotation(MyPointCut)")
public Object doSomethingBeforeAndAfterEachMethodCall()
{
...
}
}
然后,我希望有一个方面在 api 字段的每个方法调用之前和之后执行一些工作。这是可行的吗?您能否指点我一些可以阅读如何操作的文档?