建造者模式(Builder Pattern)

在MyBatis的SqlSessionFactoryBuilder创建SqlSessionFactory中有使用到建造者模式

建造者模式:多个简单的对象一步一步构建成一个复杂的对象

应用场景:1、需要生成的对象具有复杂的内部结构。 2、需要生成的对象内部属性本身相互依赖。

在MyBatis中SqlSessionFactoryBuilder创建SqlSessionFactory中首先需要解析MyBatis的配置文件,然后在它的配置文件有一个mappers节点,然后再去解析相应的mappers映射文件,最后构建Mybatis运行的核心对象Configuration对象,然后将该Configuration对象作为参数构建一个SqlSessionFactory对象。

工厂模式和建造者模式区别?

1.工厂模式一般都是创建一个产品,注重的是把这个产品创建出来就行,只要创建出来,不关心这个产品的组成部分。从代码上看,工厂模式就是一个方法,用这个方法就能生产出产品。

             

2.建造者模式也是创建一个产品,但是不仅要把这个产品创建出来,还要关系这个产品的组成细节,组成过程。从代码上看,建造者模式在建造产品时,这个产品有很多方法,建造者模式会根据这些相同方法但是不同执行顺序建造出不同组成细节的产品。

 

具体的案例参考:

https://www.runoob.com/design-pattern/builder-pattern.html

posted @ 2019-06-25 23:06  LeeJuly  阅读(173)  评论(0)    收藏  举报