启用 @AspectJ 支持

要在Spring配置中使用 @AspectJ 切面,您需要启用Spring支持配置基于 @AspectJ 切面的Spring AOP,并根据它们是否受这些切面建议来自动代理bean。所谓自动代理,是指如果Spring确定一个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 命名空间中的标签。