摘要
Mybatis源码,让我们一起探索它的奥秘吧!从总体构架和基本原理开始,深入了解每一个步骤,感受它的魅力。
正文
【Mybatis源代码分析】- 总体构架及基本原理
总体构架
version-3.5.5
在深入了解Mybatis的源代码以前,大家先了解一下Mybatis的总体构架和原理,那样有利于我们在阅读文章源代码全过程中掌握构思和步骤。
关键步骤
在上一遍的新手入门程序流程中,大家根据实例编码简易的详细介绍了怎样根据Myabtis开展一个简易的增删,并且用简易的流程叙述了实例程序流程的运作全过程。为了更好地更形象化,其原理可了解成以下流程:
- 复位环节:载入XML环境变量和注释中的配备信息内容,建立配备目标,并进行每个控制模块的复位的工作中
- 代理商环节:封裝iBatis的程序编写实体模型,应用mapper接口开发的复位工作中
- 数据信息读写能力环节:数据信息读写能力环节:根据SqlSession进行SQL的分析,主要参数的投射、SQL的实行、結果的分析全过程
总体构架
大家从工作中电路原理图中也能见到构架的身影。这是一个Mybatis的逻辑性区划框架图,能够 分为三层
- 插口层:通SqlSession类给予对数据库查询浏览工作能力,掩藏了事后繁杂的解决逻辑性。
- 关键解决层:关键承担实行SQL,并回到結果
- 基本适用层:对一些基本作用开展封裝,为关键解决层给予服务项目。
编码构造
Mybatis的工程项目构造十分的清楚,大部分根据报考就可以掌握到该控制模块的作用应用情景,能十分快速的帮大家精准定位编码和掌握作用。
- annotations:注释配备
- binding:关联、代理商 给予 Mapper 插口与 XML 投射文档开展关系的适用
- builder:搭建、配备分析
- cache:缓存文件
- cursor:游标卡尺
- datasource:数据库
- exceptions:出现异常(大部分每一个包下都是有自身的自定义异常)
- executor: SQL电动执行机构
- io:資源载入
- jdbc:jdbc实际操作
- lang:语言表达 UsesJava7、UsesJava8
- logging:日志适用
- mapping:投射主要参数、結果、SQL
- parsing:在线解析 XPath、Token分析
- plugin:软件适用
- reflection:反射面作用封裝
- scripting:脚本制作
- session: 对话
- transaction:事务管理
- type:种类 jdbcType,javaType转换
- util:工具箱
策略模式
源代码中应用了许多的策略模式
- SqlSession应用门面模式
- 日志控制模块应用了适配器模式
- 数据库控制模块应用工厂模式
- 数据信息数据库连接池应用策略模式
- 缓存文件控制模块应用了装饰器模式
- Executor控制模块应用了模版方式 方式
- Builder控制模块应用了建造者模式
- Mapper插口应用了分销模式
- 软件控制模块应用责任链模式
汇总
总体来说,Mybatis的编码还算比较好了解的,相对性简单易懂。在掌握JDBC的实际操作基本原理后,在融合Mybatis的运作基本原理,就能大概掌握其工作内容了。事后大家将一步一步尽心竭力剖析!
关注不迷路
扫码下方二维码,关注宇凡盒子公众号,免费获取最新技术内幕!
温馨提示:如果您访问和下载本站资源,表示您已同意只将下载文件用于研究、学习而非其他用途。
评论0