Spring AOP
一.什么是aop
aop为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的统一维护的技术
利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分的耦合度降低,提高程序的可重用性、
二.Aop的作用和优势
作用:在程序运行期间,在不修改源码的情况下对方法进行功能增强
优势:减少重复代码,提高开发效率,并且便于维护
三.基于cglib的动态代理
cglib集成在Spring core包中,可以直接使用
四.AOP的相关概念
Target(目标对象):代理的目标对象
Proxy(代理):动态生成代理对象,对目标增强
Joinpoint(连接点):可以被增强的方法
Pointcut(切入点):连接点中要被增强的部分叫切入点
Advice(通知/增强):拦截到Joinpoint后进行通知/增强
Aspect(切面):切点和通知的结合
Weaving(织入):切点和通知/增强结合的过程叫织入
五.Aop开发编写的内容
编写核心业务代码(目标类的目标方法)
编写切面类,切面类中有通知(增强功能方法)
在配置文件中,配置织入关系,即将哪些通知与哪些连接点进行结合