AOP与代理模式
为什么将一个对象加入到IOC容器后,取出该对象后,发现它的方法多了一些功能?
原因是:如果该类被AOP切中,从IOC容器取出的对象,不是该类的对象,而是该类代理类的对象。
文章目录:
1.代理模式
- 简介
- 作用
- 分类
2.静态代理实现
3.动态代理实现
- JDK动态代理
- CGLB动态代理
AOP的实现原理
- 当调用容器的getBean方法后,Spring查找对象后会判断该对象的方法是否被某个切面切中
- 如果没有切中,就创建原有类的对象
- 如果实现过接口,则通过JDK动态代理生成代理类,并创建对象
- 如果没有实现过接口,则通过CGLib动态代理生成代理类,并创建对象