SSM框架day01——016——代理模式简介
2018-03-20 21:30
363 查看
1.什么是代理模式? 代理模式是GoF四人组提出的 23中设计模式之一。
若一个类T不能或不适合让另外一个类C直接访问,或者,类T在不修改自身源码的前提下,想增强业务逻辑功能,此时,就可以通过一个中间类P来完成这些需求。那么,这个中间类P就称为代理类,而类T则称为目标类。
换个角度思考,那就是说,客户类C若想与目标类T打交道,那么就需要通过代理类P来完成。即客户类只能与代理类P发生直接的联系。代理类P的对象可以代表目标类T与客户类打交道。
2.代理模式中的角色 目标类
代理类
客户类
3.代理模式的目的 1)为例保护和隐藏某一个类,可以使用代理模式
2)在不修改某个类的源码的前提下,为了增强某个类的功能,可以使用代理模式
4.代理模式的分类 根据代理类创建的时间的不同,或者说,根据代理关系确立的时机的不同,可以将代理模式分为两类:
1)静态代理
2)动态代理
动态代理又根据实现技术的不同,可以分为若干类,例如
1)JDK的动态代理
2)CGLIB动态代理
3)Javassist动态代理
......
若一个类T不能或不适合让另外一个类C直接访问,或者,类T在不修改自身源码的前提下,想增强业务逻辑功能,此时,就可以通过一个中间类P来完成这些需求。那么,这个中间类P就称为代理类,而类T则称为目标类。
换个角度思考,那就是说,客户类C若想与目标类T打交道,那么就需要通过代理类P来完成。即客户类只能与代理类P发生直接的联系。代理类P的对象可以代表目标类T与客户类打交道。
2.代理模式中的角色 目标类
代理类
客户类
3.代理模式的目的 1)为例保护和隐藏某一个类,可以使用代理模式
2)在不修改某个类的源码的前提下,为了增强某个类的功能,可以使用代理模式
4.代理模式的分类 根据代理类创建的时间的不同,或者说,根据代理关系确立的时机的不同,可以将代理模式分为两类:
1)静态代理
2)动态代理
动态代理又根据实现技术的不同,可以分为若干类,例如
1)JDK的动态代理
2)CGLIB动态代理
3)Javassist动态代理
......
相关文章推荐
- SSM框架day01——017——静态代理模式使用要求、静态代理模式的执行流程分析
- SSM框架day01——020——动态代理模式使用要求
- SSM框架day01——021——JDK动态代理模式、022-JDK动态代理模式的实现
- SSM框架day01——015——回调模式的复杂变形
- SSM框架系列学习总结5之Mybatis实现基本CRUD和代理开发模式
- SSM框架day01——023——JDK动态代理时序图流程分析、024——JDK动态代理回调流程分析
- SSM框架day01——032——缺省适配器设计模式、033——模板方法设计模式基础知识
- SSM框架day01——013——回掉模式的典型形式
- SSM框架day01——014——回调模式的一般变形
- 设计模式之代理模式简介
- (4.6.22.2)来吧,是时候撸一份自己的RxJava框架啦:代理模式实现线程调度
- SSH与SSM学习之Spring14——动态代理之自己的AOP框架
- 分布式框架简介SSM组合+ springmvc+mybatis+shiro+restful+bootstrap
- 代理(Proxy)模式简介
- 分布式框架简介SSM组合+ springmvc+mybatis+shiro+restful+bootstrap
- 分布式框架简介SSM组合+ springmvc+mybatis+shiro+restful+bootstrap
- 设计模式之代理模式简介
- SSM框架配置简介
- SSM框架简介
- 从零开始写javaweb框架笔记18-使框架具备AOP特性-代理技术简介