第八章 外观模式 Facade
结构型设计模式
定义:
又叫门面模式,提供了一个统一的接口,用来访问子系统中的一群接口,让子系统更容易使用
类图:
应用:
mybatis中的Configuration
public class Configuration { // 省略代码 protected final InterceptorChain interceptorChain = new InterceptorChain(); // 省略代码 public ParameterHandler newParameterHandler(MappedStatement mappedStatement, Object parameterObject, BoundSql boundSql) { ParameterHandler parameterHandler = mappedStatement.getLang().createParameterHandler(mappedStatement, parameterObject, boundSql); parameterHandler = (ParameterHandler) interceptorChain.pluginAll(parameterHandler); return parameterHandler; }
Configuration是
外观类
,InterceptorChain是子系统
,通过外观类Configuration的newParameterHandler方法调用子系统InterceptorChain获取具体产品
不积跬步,无以至千里;不积小流,无以成江海