aop是指面向切面编程。
具体意思是,将与主业务逻辑不相关,或者与主业务逻辑并行的业务线,的代码,从原有的oop编程方式时,与主业务逻辑纠缠在一起的方式,分离开来,将这些横切面的代码集中到一起管理的方式称为aop、
有几种方式
before
after
around
他的实现本质是用来java动态代理和cglib动态代理
如果是接口,则java动态代理
如果是普通类,则cglib。
调试spring源码注意一个问题,好些动态代理的类,不可以直接进入断点,因为spring本身的一些类需要动态代理,所以只有在将要执行动态代理方式时进入断点,再在里面打断点。