目录
答:AOP即面向切面编程,是Aspect Orient Programming,本质上是对动态代理步骤的规范化。
Spring主要在事务处理的时候使用AOP,但是在实际项目开发中,由于Spring自身实现的AOP技术过于笨重,所以我们也用的很少。
首先Aspectj是一个专门做AOP的框架,因此它就显得更专业,用的更广泛,Aspectj框架是Eclipse的一个开源项目。
因此我们在开发的时候,虽然使用的是Spring框架,但是我们却是在Spring框架中集成的是Aspectj框架的AOP技术,因此我们记得要在Spring的pom文件中添加spring-aspectj依赖。
切面:我们要给原始的方法重增加的一个新的方法,这个新增加的方法就叫做切面,比如我们给已有的方法增加日志,事务等功能;此时这个日志方法,事务方法就叫做切面。
JoinPot:即连接点,它是目标类中的一个方法,其实就是最原始的方法,谁被添加新的方法,谁就是连接点。
PoinCut:即切入点,即目标类中的所有方法。
Advice:也叫做“通知”,“增强”,(这里是重点,共有5个注解)
切面的执行位置:即对目标类中的那些方法进行增强,这里会使用切面表达式。(重点)。







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