栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Mybatis底层分析(三) 动态代理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Mybatis底层分析(三) 动态代理

接着上一篇继续

 下面追进 new MapperProxyFactory(type)

 实际上,就是给这个属性赋值,再回到前面

 这里的 knowMappers是个 hashMap

追进下一行代码

MapperAnnotationBuilder parser = new MapperAnnotationBuilder(config, type);

 这里的 config 在之前赋值了,不做解释

 这里的话,直接打个断点 ,看一下resource 是什么

  此时resource 为 commapper/AdminMapper.java (best guess)

追进 

new MapperBuilderAssistant(configuration, resource);

 箭头的代码只是做了个全局配置更新操作,追进下一行代码

 从  ThreadLocal 获取里面存放的属性,为空new 对象 赋值,并且放在当前 ThreadLocal中

返回 该对象,

ErrorContext.instance() 返回了一个context对象,下面追进resource()

 可以发现 也只是个赋值操作  ,方法都走完  回到下图

 parse() 不追了。。这里面讲清楚得开两篇文章?只需要知道这块主要是处理dao层的@Select

@update 等语句

代码执行完 就回到了最初的起点 

 

 

 

 至此,SqlSessionFactory 构建完毕

 

暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1016369.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号