我有一个注释,它是一个类级别的注释
@Dummy(value = 123)
[我如何创建一个方面,该被注释的类的任何方法执行都会被调用before
。我只想打印方面建议中的注释值。
以下方面将达到相同效果
@Component
@Aspect
public class DummyAspect {
@Before(value = "@target(dummy) && within(com.your.package..*)")
public void before(JoinPoint jp, Dummy dummy) {
System.out.println(dummy.value());
}
}
within()
-是范围界定符,用于缩小要建议的类的范围。没有此指定符,运行可能会产生不良结果,因为它也可能会针对框架类。
请仔细阅读@kriegaex的this answer以详细了解指示符。