整体架构
这只是MySql的一个逻辑划分架构。
- 接口层:通
SqlSession类提供对数据库访问能力,隐藏了后续复杂的处理逻辑。 - 核心处理层:主要负责执行SQL,并返回结果。
- 基础支撑层:对一些基础功能进行封装,为核心处理层提供服务。
代码结构
Mybatis的代码结构非常工整,堪称完美的java编程规范教科书,当我们深入源码我们会发现,Mybatis的注释量相当少,那是因为基本上我们可以通过名称就能明白其中的含义。
Mybatis中的设计模式
如果想学习设计模式在代码中的应用,阅读Mybatis源码也是一个不错的选择,如:
- SqlSession使用门面模式
- 日志模块使用了适配器模式
- 数据源模块使用工厂模式
- 数据连接池使用策略模式
- 缓存模块使用了装饰器模式
- Executor模块使用了模板方法模式
- Builder模块使用了建造者模式
- M