Spring AOP 简介与概述
1. 什么是 Spring AOP?
Spring AOP(面向切面编程)是 Spring 框架的一个关键特性,用于增强现有的 Java 代码。它提供了一种通过在应用程序中定义切面来截获和修改方法执行的方式,而不需要修改实际的业务逻辑代码。
2. 核心概念:
-
切面: 切面是横切关注点的模块化单元。
-
通知: 通知定义了在什么时候、何地执行切面的逻辑。常见的通知类型包括前置通知、后置通知、环绕通知、异常通知和最终通知。
-
切点: 切点定义了在应用程序中哪些地方应该应用通知。它是一个表达式,匹配连接点。
-
连接点: 连接点是在应用程序中,允许切面插入的点,例如方法调用、异常抛出等。
3. AOP的工作原理:
Spring AOP通过在运行时动态地创建代理对象来实现切面的织入。这意味着,当调用被代理的对象的方法时,实际上会调用代理对象,从而使切面的逻辑被执行。
4. 配置 Spring AOP:
在Spring中,可以通过XML配置、注解或Java配置来定义切面和通知。配置的方式包括在Spring配置文件中声明 <aop:config>
元素,使用 @Aspect
注解,或者通过编写 @Co