![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
文章平均质量分 68
提到设计模式,面试常问:你在项目中用到过哪些设计模式呢?我就以设计模式在项目中的应用或在开源框架中的应用展开阐述
wangchenggong1988
这个作者很懒,什么都没留下…
展开
-
MyBatis的设计模式总结
单例模式 ErrorContext:使用ThreadLocal实现线程内的单例(虽然定义在executor包, 但是服务于日志包) io包下的VFS:使用静态内部类实现的单例模式 工厂模式: 反射包中的ObjectWrapperFactory、ReflectorFactory等 绑定包中的MapperProxyFactory: /** * Mapper代理类工厂,用于为某个Mapper接口生成代理类 * 存了Mapper接口的Class对象,提供了newInstance静态方法 * @a.原创 2021-02-10 18:45:39 · 79 阅读 · 1 评论 -
设计模式在项目中是如何用的?职责链模式篇(Chain Of Responsibility Design Pattern)
一、职责链模式是什么?有哪些应用场景? 所谓模板方法模式,就是定义一个操作中的算法的骨架(这个将具体逻辑步骤汇总起来的方法就是所谓的模板方法),而将一些步骤延迟到子类中去实现 模板方法模式是类的行为模式,它的应用场景是同一个接口的不同实现类存在公共代码,这样就可以用模板方法模式将不变部分进行实现、封装在模板类中,将可变部分作为抽象方法留给子类扩展,从而复用顶级逻辑的代码。 二、职责链模式的实现 模板方法模式的实现,关键代码是定义一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽原创 2021-01-26 12:03:29 · 175 阅读 · 2 评论 -
设计模式在项目中是如何用的?模板方法模式篇(Template Method Pattern)
模板方法模式是什么?有哪些应用场景? 所谓策略模式,就是一个类的行为或其算法可以在运行时更改 策略模式的应用场景是系统中存在【总分结构】,即对于同一个业务存在有相似的分支逻辑(实现),而区分它们的仅仅是业务类型的不同,这样就可以用策略模式从多种相似的算法中筛选出目标算法,从而避免了使用 if…else 所带来的复杂和难以维护。 模板方法模式的实现 策略模式的实现,关键代码是多个类实现同一个接口(Strategy接口),同时另有一个类持有该接口的所有实现类(持有Strategy所有实现类的Context原创 2020-09-28 06:56:13 · 481 阅读 · 0 评论 -
设计模式在项目中是如何用的?策略模式篇(Strategy Pattern)
策略模式是什么?有哪些应用场景? 所谓策略模式,就是一个类的行为或其算法可以在运行时更改 策略模式的应用场景是系统中存在【总分结构】,即对于同一个业务存在有相似的分支逻辑(实现),而区分它们的仅仅是业务类型的不同,这样就可以用策略模式从多种相似的算法中筛选出目标算法,从而避免了使用 if…else 所带来的复杂和难以维护。 策略模式的实现 策略模式的实现,关键代码是多个类实现同一个接口(Strategy接口),同时另有一个类持有该接口的所有实现类(持有Strategy所有实现类的Context类),这原创 2020-09-24 08:19:57 · 511 阅读 · 0 评论