|
对于最新的稳定版本,请使用 Spring Framework 7.0.6! |
启用@AspectJ支持
要在 Spring 配置中使用 @AspectJ 切面,你需要启用 Spring 对基于 @AspectJ 切面的 Spring AOP 配置支持,并根据这些切面是否通知(advised)了 Bean 来自动代理(auto-proxy)Bean。所谓自动代理,是指如果 Spring 确定一个 Bean 被一个或多个切面通知,则会自动为该 Bean 生成一个代理,以拦截方法调用并确保在需要时运行通知。
可以通过XML或Java风格的配置启用@AspectJ支持。无论采用哪种方式,都需要确保应用程序的类路径中包含AspectJ的aspectjweaver.jar库(版本1.9或更高)。该库可在AspectJ的lib目录中找到,也可从Maven中央仓库获取。
使用Java配置启用@AspectJ支持
要使用 Java @Configuration 启用 @AspectJ 支持,请添加 @EnableAspectJAutoProxy
注解,如下例所示:
-
Java
-
Kotlin
@Configuration
@EnableAspectJAutoProxy
public class AppConfig {
}
@Configuration
@EnableAspectJAutoProxy
class AppConfig
使用 XML 配置启用 @AspectJ 支持
要使用基于XML的配置启用@AspectJ支持,请使用aop:aspectj-autoproxy
元素,如下例所示:
<aop:aspectj-autoproxy/>
这假设您使用了如
基于XML Schema的配置
所述的模式支持。有关如何在
aop 命名空间中导入标记的信息,请参阅
AOP模式。