Spring框架中的核心技术之AOP

目录

1. 什么是AOP?

2. 实现AOP技术的框架有哪些?

2.1 Spring框架中的AOP技术

2.2 Aspectj框架

2.3 小结

3. Aspectj框架中的使用AOP的方式

4. Aspectj框架中使用aop时候的一些术语

5. AOP中的注解的详细解释

 5.1 @Aspect

 5.2  @Before

 5.3 @AfterReturning

 5.4 @Around

 5.5 @AfterThrowing

 5.6 @After

 5.7 @PointCut


1. 什么是AOP?

答:AOP即面向切面编程,是Aspect Orient Programming,本质上是对动态代理步骤的规范化。

2. 实现AOP技术的框架有哪些?

  • Spring框架
  • Aspectj框架

2.1 Spring框架中的AOP技术

Spring主要在事务处理的时候使用AOP,但是在实际项目开发中,由于Spring自身实现的AOP技术过于笨重,所以我们也用的很少。

2.2 Aspectj框架

首先Aspectj是一个专门做AOP的框架,因此它就显得更专业,用的更广泛,Aspectj框架是Eclipse的一个开源项目。

2.3 小结

因此我们在开发的时候,虽然使用的是Spring框架,但是我们却是在Spring框架中集成的是Aspectj框架的AOP技术,因此我们记得要在Spring的pom文件中添加spring-aspectj依赖。

3. Aspectj框架中的使用AOP的方式

  • XML配置文件的方式(常用于事务)
  • 注解的方式(常用)

4. Aspectj框架中使用aop时候的一些术语

切面:我们要给原始的方法重增加的一个新的方法,这个新增加的方法就叫做切面,比如我们给已有的方法增加日志,事务等功能;此时这个日志方法,事务方法就叫做切面。

JoinPot:即连接点,它是目标类中的一个方法,其实就是最原始的方法,谁被添加新的方法,谁就是连接点。

PoinCut:即切入点,即目标类中的所有方法。

Advice:也叫做“通知”,“增强”,(这里是重点,共有5个注解)

切面的执行位置:即对目标类中的那些方法进行增强,这里会使用切面表达式。(重点)。

5. AOP中的注解的详细解释

5.1 @Aspect

5.2  @Before

Spring框架中的核心技术之AOP_第1张图片

 5.3 @AfterReturning

Spring框架中的核心技术之AOP_第2张图片

5.4 @Around

Spring框架中的核心技术之AOP_第3张图片

5.5 @AfterThrowing

Spring框架中的核心技术之AOP_第4张图片

5.6 @After

Spring框架中的核心技术之AOP_第5张图片

 5.7 @PointCut

Spring框架中的核心技术之AOP_第6张图片

 总结:

以上就是Spring框架中的AOP技术最核心常用的内容,可以很清楚的看到,使用了AOP之后,我们对动态代理的规范化更加的标准,但是这也要求你对最原始的JDK动态代理要有更深的认识.

你可能感兴趣的:(spring,AOP,动态代理)