启用 @AspectJ 支持

要在 Spring 配置中使用 @AspectJ 切面,你需要启用 Spring 支持,以便基于 @AspectJ 切面来配置 Spring AOP,并根据 Bean 是否被这些切面增强来自动代理 Bean。通过自动代理,我们指的是如果 Spring 确定一个 Bean 被一个或多个切面增强,它会自动为该 Bean 生成一个代理,以拦截方法调用并确保按需运行通知。

@AspectJ 支持可以通过编程式或 XML 配置启用。在任何一种情况下,你都需要确保 AspectJ 的 org.aspectj:aspectjweaver 库位于应用程序的类路径中(版本 1.9 或更高)。

  • Java

  • Kotlin

  • Xml

@Configuration
@EnableAspectJAutoProxy
public class ApplicationConfiguration {
}
@Configuration
@EnableAspectJAutoProxy
class ApplicationConfiguration
<beans xmlns="http://www.springframework.org/schema/beans"
	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	   xmlns:aop="http://www.springframework.org/schema/aop"
	   xsi:schemaLocation="http://www.springframework.org/schema/beans
			https://www.springframework.org/schema/beans/spring-beans.xsd
			http://www.springframework.org/schema/aop
			https://www.springframework.org/schema/aop/spring-aop.xsd">

	<aop:aspectj-autoproxy />
</beans>