Java设计模式全集-门面/外观模式(Facade)

门面/外观模式(Facade)

门面模式,也叫作外观模式,通常来说是为了解除对外调用的复杂性时进行运用,主要的思想是保证内部逻辑对外部调用者的透明,像mybatis对外提供服务,基本上都是由SqlSession统一提供服务,至于一级缓存,二级缓存如果实现,不需要外部开发者进行关心

UML

Java设计模式全集-门面/外观模式(Facade)

  • 可能直接从UML图上看不出来什么,那么举一个现实中的例子,像现在很多地方都建立了行政服务大厅,各个*行政部门都在大厅内设置了办事处。那么在没有行政服务大厅前,大家办事可能就是这样的

改造前

各个小模块各司其职,都对外进行服务

Java设计模式全集-门面/外观模式(Facade)

改造后

由一个统一的出口对外提供服务,对Mybatis来讲,那个门面就是SqlSession

Java设计模式全集-门面/外观模式(Facade)