源码包分析
MyBatis 源码下载地址:https://github.com/MyBatis/MyBatis-3
MyBatis源码导入过程:
下载MyBatis的源码
检查maven的版本,必须是3.25以上,建议使用maven的最新版本
MyBatis的工程是maven工程,在开发工具中导入,工程必须使用jdk1.8以上版本;
把MyBatis源码的pom文件中<optional>true</optional>,全部改为false;
在工程目录下执行 mvn clean install -Dmaven.test.skip=true,将当前工程安装到本地仓库(pdf插件报错的话,需要将这个插件屏蔽); 注意:安装过程中会可能会有很多异常信息,只要不中断运行,请耐心等待;
其他工程依赖此工程
MyBatis整体架构

外观模式(门面模式)

门面模式:提供了一个统一的接口,用来访问子系统中的一群接口。外观模式定义了一个高层接口,让子系统更容易使用。
优点
使复杂子系统的接口变的简单可用,减少了客户端对子系统的依赖,达到了解耦的效果;
遵循了OO原则中的迪米特法则,对内封装具体细节,对外只暴露必要的接口。
使用场景
一个复杂的模块或子系统提供一个供外界访问的接口
子系统相对独立 ― 外界对子系统的访问只要黑箱操作即可
谈谈设计模式的几个原则
单一职责原则:一个类或者一个接口只负责唯一项职责,尽量设计出功能单一的接口;
依赖倒转原则:高层模块不应该依赖低层模块具体实现,解耦高层与低层。既面向接口编程,当实现发生变化时,只需提供新的实现类,不需要修改高层模块代码;
开放-封闭原则:程序对外扩展开放,对修改关闭;换句话说,当需求发生变化时,我们可以通过添加新模块来满足新需求,而不是通过修改原来的实现代码来满足新需求;
迪米特法则:一个对象应该对其他对象保持最少的了解,尽量降低类与类之间的耦合度;
里氏代换原则:所有引用基类(父类)的地方必须能透明地使用其子类的对象;
接口隔离原则:客户端不应该依赖它不需要的接口,一个类对另一个类的依赖应该建立在最小的接口上;
基础支撑层源码分析

原文:https://www.cnblogs.com/Soy-technology/p/11423537.html