spring 中设计模式

说明:刚开始总结以后慢慢补齐。。。。。。。。。。。

一、工厂模式

二、观察者模式

三、策略模式

四、代理模式

1)代理模式特点

1-1)分为2个角色,代理及被代理

1-2)对于被代理来说这件事一定要做,但是自己并不想做或没时间做需要找代理进行驱动

1-3)需要获取被代理者信息

举例:比如我们所关心的租房中介与租户,首先我们需要告诉中介我们想要租一房一厅租金在1500左右等,我们没有房源和信息我们需要通过中介进行,最终我们通过中介进行合同签订而租房。

1-4)jdk 代理

spring 中设计模式

spring 中设计模式

spring 中设计模式

spring 中设计模式

spring 中设计模式

源码分析:首先我们主要看获取代理对象,spring 中设计模式

从源码中可以看到,我们通过复制其接口元数据信息,通过class 创建一个class对象,通过class 获取构造器对象,然后创建一个代理对象,一个具有接口信息的代理对象。

再看InvocationHandler源码说明可值,每当调用其被代理对象方法时会执行invoke 方法,然后及逆行方法调用。

五、单例模式

六、委派模式

七、原型模式(模板模式)