SSM项目从零开始到入门010-mybatis提供的动态代理实现过程探究
发布日期:2021-06-30 16:29:14
浏览次数:2
分类:技术文章
本文共 499 字,大约阅读时间需要 1 分钟。
mybatis提供的动态代理实现过程探究
上小节我们简单实现了mybatis的动态代理,本节我们跟进动态代理的实现
我们在上图47行的地方打上一个断点,然后debug执行程序
点击F5跟进程序
上面的sqlsession即我们创建的sqlsession args为参数,点击F5继续跟进execute函数
因为我们执行是insert方法
我们在此处按F5跟进
此处返回的为我们的User对象属性,F6下一步继续跟进
看上图返回值,是返回了我们写的方法的名称全路径,我们跟进这个方法,点击F5跟进
原来这个路径是通过我们的配置文件全路径,然后加上方法id得到的,我们F6继续跟进
点击F5进入此方法
显然这个方法是得到了addUser方法的配置信息,我们继续跟进152行
70行刷新了下缓存,继续跟进update方法
继续跟进法继续跟进doUpdate方法
doUpdate方法中定义了Statement对象,handler组装了sql语句, 跟进48行update方法
方法将satement转换为预加载preparesatement然后执行并返回受影响行数
最后程序关闭预加载
整体流程整理如下图
转载地址:https://kevin.blog.csdn.net/article/details/78812278 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年05月06日 00时36分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
centos最小化安装配置网络问题
2019-05-01
linux下安装jenkins+git+python
2019-05-01
windows10家庭版开启组策略
2019-05-01
python多线程_thread与threading(推荐使用)
2019-05-01
【经验分享】XPATH逻辑运算
2019-05-01
解决uiautomatorviewer中添加xpath的方法
2019-05-01
python安装mysqlclient[MySQLdb]
2019-05-01
性能测试的必要性评估以及评估方法
2019-05-01
性能测试需求分析
2019-05-01
性能测试需求评审
2019-05-01
性能测试实施流程
2019-05-01
Jmeter在多线程当中对某个http请求进行循环读取配置文件
2019-05-01
使用Spark读写外部存储介质(Mysql、Hbase、Redis)
2019-05-01
Spark学习——利用Mleap部署spark pipeline模型
2019-05-01
手写LogisticRegression
2019-05-01
Oracle创建表,修改表(添加列、修改列、删除列、修改表的名称以及修改列名)
2019-05-01
nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate 报错
2019-05-01
最后一台,i7+6核电脑
2019-05-01
以不同业务,redis分库概念
2019-05-01