![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Mybatis
文章平均质量分 62
1, 记录Mybaits基础理论知识。2,记录实践的问题及其解决方案。3,记录Mybatis一些原理知识。
欧阳田
生活没有对与错,一路爬行。
展开
-
通过demo理解mybatis的plugin
背景1, mybatis通过插件来扩展功能。2,Mybatis的插件其实可以理解为拦截器。3,Mybatis能够拦截的接口只有4个(1)ParameterHandler(2)StatementHandler(3)Executor(4)ResultSetHandler过程文件目录全景接口InterfacePlugin的实现类实现InvocationHandler的Plugin测试类测试结果小结其实,理解代理的执行流程会有一些抽象。因此,记录一原创 2021-09-17 16:18:09 · 181 阅读 · 0 评论 -
Mybatis的mybatis-config.xml文件的标签是有顺序的?
背景记录添加mybaits插件报错过程错误标签顺序配置结果configuration的内容必须按照如下内容和顺序进行匹配 “(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,plugins?,environments?,databaseIdProvider?,mappers?)”。修改,把plugins移动到environment标签之前结果,正确原创 2021-04-12 10:28:58 · 240 阅读 · 0 评论 -
带着疑问去学习Mybatis的工作过程
背景记录应该理解Mybatis核心问题是哪些过程如何在项目中引入Mybatis Mybatis的groupId是什么?artifactId又是什么?目前最新版本是多少?如何从xml中构建 SqlSessionFactory?SqlSessionFactory的作用是什么?xml配置了哪些信息?用什么方式解析xml的?xml里的标签都是什么意思:configuratio、environments、transactionManager、dataSource、mappers。这些标签的属性分别是原创 2021-04-10 23:58:56 · 114 阅读 · 2 评论 -
Mybatis源码中的架构设计
背景记录Mybatis的架构设计过程架构图说明接口层,SqlSession就是我们每次请求创建的sqlSession会话实例。功能就是跟数据库进行交互。执行的动作就是CRUD操作。数据库处理层,配置信息(参数信息,sql信息,结果集返回映射信息),解析配置信息,类型转换(java type到jdbc type; jdbc type到java type)基础层。提供基础设施,比如读取文件资源的io, 构建xml的builder,解析xml的xpath、xnode,事务管理,缓原创 2021-04-10 23:20:49 · 161 阅读 · 0 评论 -
Mybatis源码中的功能模块分析
背景记录mybatis3的功能模块,辅助理解mybatis是怎么工作的。过程源码模块展示annotations注解,比如常用的@Select, @Insert,@Update,@Delete还有其他很多。用法就是利用反射的知识,拿到类的元信息,然后按照定义的规则,一步一步解析出来。binding(非常重要的模块) 为mapper接口生成对应的mapper代理类,并能够通过statementId获取到每个mapper文件都有一个对应的mapper代理类。MapperProxyFac原创 2021-04-10 18:25:43 · 215 阅读 · 3 评论