1、什么是SpringAOP?
aop是面向切面编程,是面向对象编程的一种延伸,目的是为了解耦和,如果把面向对象的程序看成一棵树的枝干的话,我们可以aop看做是树的分支。
从业务上来讲,比如银行转账是一个事务,我们可以先编写一个转账程序,利用aop技术来横切事务,转账成功之后则提交,转账失败之后则回滚。
具体的介绍可以去spring官网看一下。
2、aop的实现技术,实现原理。
aop实现主要分为两大类:
动态代理,静态代理。
a>静态代理指使用aop框架提供的命令进行编译,从而在编译阶段就可以生成aop代理类,也称为编译时增强
b>动态代理指运行时在内存中动态生成aop动态代理类,因此也称为运行时增强。