Mybatis源码学习
2021-04-12 18:56:59 8 举报
AI智能生成
Mybatis源码学习
作者其他创作
大纲/内容
1- 读取配置文件, 构建出SqlSessionFactory对象
2- 通过SqlSessionFactory对象获取其sqlSession会话
3- 通过SqlSessionFactory对象获取对应Mapper动态代理对象
通过深究为什么返回的是代理对象,<br>通过sqlSession.getMapper(UserMapper.class);
调用了configuration.getMapper(type, this)<br>this代表的是会话对象本身, 与需要获取代理类型
又调用了mapperRegistry.getMapper(type, sqlSession);<br>从方法中创建代理对象返回
mapperProxyFactory.newInstance(sqlSession)方法进行<br>创建代理对象
MapperProxy这个类实现了InvocationHandler接口.所以能进行代理操作.重写了invoke方法.<br>
4- 动态代理对象执行接口方法
Executor执行器接口
抽象基础处理器<br>BaseExecutor
简单执行器<br>SimpleExecutor
可重用执行器<br>ReuseExecutor
批处理执行器<br>BatchExecutor
执行接口方法过程
收藏
收藏
0 条评论
下一页